テキストボックスを含むユーザースクリプト(DOM JavaScript)を作成しました。私は、テキストボックスがアイテムのドロップ時に入力のGoogle検索を開くようにしたい。たとえば、「Javascript」という単語を選択してテキストボックスにドラッグすると、「Javascript」のGoogle検索が開きます。テキストボックスにドロップされたウェブサイトHTML
これは私が持っているコードです:
//only Javascript
var input2=document.createElement("input");
input2.type="text";
input2.id="Word_search";
input2.addEventListener("drop", GoogleWord);
document.body.appendChild(input2);
function GoogleWord(){
console.log("hi");
var text = document.getElementById("Word_search").value;
alert(text);
window.open('https://www.google.com/search?q=' + text,'_blank');
}
(スニペット内で動作するようには思えないので、私はスニペットを使用することができなかった)
主な問題は、関数が前に実行されることですテキストがテキストボックスに挿入されるため、空のGoogle検索が行われます。
したがって、関数が実行されるときにテキストボックス内にテキストが必要です。
それが動作するはずのように見えます。あなたは 'input2.addEventListener(" drop "、GoogleWord());'? 'GoogleWord'の後の余分な括弧は、関数をすぐに実行させるでしょう。 – Barmar
正常に動作します:https://jsfiddle.net/barmar/w0xe98fm/2/ – Barmar
私はそれがドロップされたテキストを検索できるようにしたいだけです。開けないでください。 – qwertyuiop