0

私は私の会社は、我々が使用したプロジェクト管理システムで使用するためにクローム拡張を構築しようとしている、BaseCampのベースキャンプの初期ロードにクローム拡張は、内部のページに

、アラートのショーを発射するが、ないときは、私はサイトをナビゲートしていますが、アラートは表示されません。私は私のマニフェストにmatches: ["https://*/*"]を使用したテストとして

MANIFEST.JS

{ 
    "manifest_version": 2, 
    "name": "BaseCamp Signature", 
    "description": "This extension adds signature to Basecamp", 
    "version": "1.0", 
    "browser_action": { 
     "default_icon": "icon.png", 
     "default_popup": "popup.html", 
     "default_title": "Title!" 
    }, 
    "permissions": [ 
     "storage", 
     "activeTab", 
     "tabs", 
     "https://3.basecamp.com/*"  
    ], 
    "content_scripts": [ 
     { 
      "matches": ["https://3.basecamp.com/*"], 
      "all_frames": true, 
      "js": ["content.js"], 
      "run_at": "document_end" 
     } 
    ] 
} 

CONTENT JS

alert('bingo'); 

、これは、すべてのサイトの内部ページにStackOverflowのを発射するだろうが含まれていても、このメソッドはBaseCampの内部ページをナビゲートするときに起動しませんでした

いつものように、任意のヘルプは大幅に現在のURLを格納し、それが変更されているかどうかを確認するために、半秒毎にチェックすることにより
+1

おそらく、各URLの更新時に私の拡張を実行することができましたBaseCampは単にURLを更新し、YouTubeのようにプログラムによってページコンテンツを変更します。 –

+0

興味深い、リアクションが舞台裏で走っているような意味ですか? –

+1

リアクションは単なるフレームワークです。私はネイティブのAPIを使用していることを意味します:https://developer.mozilla.org/en-US/docs/Web/API/History_API#The_pushState()_method –

答えて

-1

を理解されるであろう

は、私が

var currentPage = window.location.href; 

// listen for changes 
setInterval(function() { 
    if (currentPage != window.location.href) { 
     // page has changed, set new page as 'current' 
     currentPage = window.location.href; 
     alert('double bingo'); 
    } 
}, 500); 
関連する問題