2017-02-13 15 views
0

私は現在、特定のキーワードの存在に基づいていくつかのHTML変更(投稿のフィルタリング)を行う最初のChrome拡張機能を作成しています。これは、ページが初めて読み込まれたときに機能し、拡張機能がクリックされたときに機能します。私はライブクエストが助けてくれると読んでいますが、何らかの理由であまりにも機能していない、おそらくそれは減価償却されています。FacebookのChrome拡張機能を初めて読み込むのではなく、繰り返し実行するにはどうすればいいですか?

現在、フィルタリングを実行するためにバックグラウンドスクリプトからメッセージを送信しています。

content.js

chrome.runtime.onMessage.addListener(function(message, sender, response){ 
if(message.type=="color-divs"){ 
     var divs = document.getElementsByClassName("userContent"); 
     var blacklist = [ 
         "Trump" 
         ] 
    for(var i=0; i<blacklist.length; i++){ 
      for(var j=0; j<divs.length; j++){ 
       var ps = divs[j].getElementsByTagName('p'); 
       var p = ps[0]; 
       if(p.innerHTML.indexOf(blacklist[i]) != -1){ 
        alert("lol"); 
        var parent = divs[j].parentNode; 

        for(var k = 0; k<parent.childNodes.length; k++){ 
         alert(parent.childNodes[k].className); 
         if (parent.childNodes[k].className == "_5x46") { 
          parent.childNodes[k].style.opacity = "0.0"; 
         } 
         if (parent.childNodes[k].className == "_5pbx userContent") { 
          parent.childNodes[k].style.backgroundColor = "black"; 
         } 

         if (parent.childNodes[k].className == "_3x-2") { 
          parent.childNodes[k].style.opacity = "0.0"; 
         } 

        } 
       } 
      } 
     } 

} 

})。

+1

多くの質問はすでにこれをカバーしています。 –

+0

この回答を見る[JavaScript/jQuery DOMの変更リスナーはありますか?](// stackoverflow.com/a/39508954) – Makyen

+0

MutationObserverを使用すると、完全に機能しました。どうもありがとう。重複した質問を申し訳ありません。 –

答えて

-1

イベントリスナーを作成してください。新しいコンテンツが読み込まれると、イベントが実行されます。

関連する問題