FacebookのChrome拡張機能に取り組んでいます。Facebookを使用している場合は、ニュースフィード/タイムライン/プロファイルの一番下までスクロールすると、さらに多くの投稿が表示されることがわかります。拡張機能は、実際には「いいね」ボタンの横にボタンを追加します。そのため、そのボタンを追加する投稿が他にもあるかどうかを確認する必要があります。
現在、ページが変更されているかどうかを確認するために、を使用していますsetInterval(function(){},2000)
。ユーザーがボタンをクリックしたときに関数を実行したい。しかし、この関数を外部(または内部)に配置すると機能しませんsetInterval()–Koderは今編集します
ループを使用せずにWebページが変更されているかどうかを確認するにはどうすればよいですか?
例:
$(document).ready(function(){
window.setInterval(function(){
$(".UIActionLinks").find(".dot").css('display','none');
$(".UIActionLinks").find(".taheles_link").css('display','none');
$(".miniActionList").find(".dot").css('display','none');
$(".miniActionList").find(".taheles_link").css('display','none');
//only this function doesn't work:
$(".taheles_link").click(function(){
$(".taheles_default_message").hide();
$(".taheles_saving_message").show();
});
//end
$(".like_link").after('<span class="dot"> · </span><button class="taheles_link stat_elem as_link" title="תגיד תכל´ס" type="submit" name="taheles" onclick="apply_taheles()" data-ft="{"tn":">","type":22}"><span class="taheles_default_message">תכל´ס</span><span class="taheles_saving_message">לא תכלס</span></button>');
$(".taheles_saving_message").hide();
}, 2000);
});
将来、この拡張機能はAJAXを使用するsetInterval()
ため、私にとってはさらに多くの問題が発生する可能性があります。