ニュースを非表示にするなど、Facebook でいくつかのタスクを実行するための小さな Greasemonkey スクリプトを作成しようとしています。
問題は、DOM にまだ存在しない要素の ID を持っていることです。投稿の矢印アイコンをクリックすると表示される小さなボックスです。
要素が存在するとすぐに起動するjQueryを介してイベントハンドラーを作成するにはどうすればよいですか?
ニュースを非表示にするなど、Facebook でいくつかのタスクを実行するための小さな Greasemonkey スクリプトを作成しようとしています。
問題は、DOM にまだ存在しない要素の ID を持っていることです。投稿の矢印アイコンをクリックすると表示される小さなボックスです。
要素が存在するとすぐに起動するjQueryを介してイベントハンドラーを作成するにはどうすればよいですか?
これは一般的な問題です。ユーティリティを使用しwaitForKeyElements()
て、表示されるAJAXed-in要素を操作できます。(たとえば、「AJAXリクエストでGreasemonkeyスクリプトを起動する」を参照してください。)
「投稿の矢印アイコンを押すと表示される小さなボックス」の意味はわかりませんが、一般的には次のようになります。
スクリプトにjQueryが含まれていることを確認してください。まだない場合は、これをメタデータセクションに追加します。
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
必須-入力waitForKeyElements
:
// @require https://gist.github.com/raw/2625891/waitForKeyElements.js
ハンドラー関数を作成してアクティブにします。
function hideTheNews (jNode) {
//***** YOUR CODE HERE *****
jNode.hide (); // For example
}
waitForKeyElements ("*APPROPRIATE jQuery SELECTOR*", hideTheNews);