2016-06-21 9 views
1

私は現在Greasemonkeyスクリプトを作成して、既存のボタンにonclickイベントを追加して確認ポップアップウィンドウを表示しています。greasemonkey - 既存のボタンにonclickイベントを追加する

これは、既存のHTMLです:

<input type="button" id="previewOrder" title="" class="ui-button ui-widget ui-state-default ui-corner-all" role="button" aria-disabled="false" value="Preview Order"> 

私は次のJavaScriptを思い付いたが、それは、この作業を取得する方法上の任意の提案を仕事や

function confirm() { 
    alert ("Sure?"); 
} 

document.getElementById("previewOrder").addEventListener("click", confirm(), false); 

を失敗しないのですか?

+0

を参照してください。それを意味のあるものと呼び、紛争を避ける。 – dandavis

答えて

1

confirm()ネイティブウィンドウメソッドです。そのための機能でそれを置く:

function myFunction() { 
    confirm(...); 
} 

:アウト助けるため

function myFunction() { 
 
    confirm("Sure?"); 
 
} 
 

 
document.getElementById("previewOrder").addEventListener("click", myFunction);
<input type="button" id="previewOrder" title="" class="ui-button ui-widget ui-state-default ui-corner-all" role="button" aria-disabled="false" value="Preview Order">

+0

ありがとう、残念ながらうまくいきませんでした... – Aurelia

+0

それは動作するはずです! ''の後に ''の最後にJavaScriptを置く必要があります。私は例を追加しました! – Sun

+0

'confirm()'が取られました... – dandavis

1

感謝。最終的には、私の側で働いていなかった理由は、スクリプトがページ(特にターゲット要素)がロードされる前に実行されたためです。 waitForKeyElements()ユーティリティを追加した後、コードは機能していました。

あなたはとにかくvaugeであるあなたの機能確認を呼び出すことはできませんhttps://stackoverflow.com/a/12899331/3149095

function myConfirm() { 
 
confirm ("Sure?\n\nCheck rules.\n\n"); 
 
} 
 

 
function setConfirm() { 
 
document.getElementById("previewOrder").addEventListener("click", myConfirm); 
 
} 
 

 
waitForKeyElements ("#previewOrder", setConfirm);

関連する問題