2016-10-21 3 views
0

私はGreasemonkeyのボタンをクリックしようとしています。GreaseMonkeyをクリックするには

var evt = document.createEvent ("HTMLEvents"); 
evt.initEvent ("click", true, true); 
document.getElementById('BIS_trigger').dispatchEvent (evt); 

そして第二に、私は前にC#やプログラミングの経験があったが、Greasemonkeyのには本当に新しいですしている

var checkoutBtn = document.querySelector (
    "add input" 
); 
var clickEvent = document.createEvent ('MouseEvents'); 
clickEvent.initEvent ('click', true, true); 
checkoutBtn.dispatchEvent (clickEvent); 

: 私は、コードの二つの異なる種類を試してみました。

HTML:私はリロードその後、私のブラウザで次の私のスクリプトの名前に小さなチェックマークを有効にすると

<p> 
<input class="btn add-to-cart pull-left" name="add" id="add" value="Add to Cart" type="submit"> 
</p> 

、何も起こりません。それは私がクリックしようとしていることが「入力」であるからですか?

あなた自身で確認したい場合は、https://www.solefly.com/products/nike-hyperdunk-08-gym-red-whiteサイトに行ってください。ありがとう!

+0

これを試しましたか:http://stackoverflow.com/questions/2705583/how-to-simulate-a-click-with-javascript? – ventaquil

答えて

1

イベントを合成する必要はありません。ボタンのclick()メソッドを呼び出すことができます。しかし、あなたの選択は間違っているので、あなたが実際にボタンを見つけることができません:

あなたがこれを行うことができ、そのidプロパティを経由してボタンを見つける:

document.querySelector('#add').click(); 

注タグのためのあなたのセレクタadd input検索することをadd(これは明らかに存在しません)という名前で、add要素の下に子孫input要素を検索します。 idの値はHTMLドキュメント内で一意であると想定されているため、idのセレクタを使用できます。接頭辞は#です。

+0

パーフェクト、私は本当に助けに感謝しています:) –

関連する問題