簡體   English   中英

使javascript從Firefox中的附件中執行javascript之后執行?

[英]Make javascript execute after javascript from add-on in firefox?

我最近安裝了附加的leechblock,可跟蹤您在特定站點上瀏覽的時間,並在超出設置的限制時阻止您。

不幸的是,它在阻止網站時顯示的頁面很難看,因此我着手制作自己的html頁面來顯示。 在此html頁上,除了很多其他內容外,還有一個鏈接可將您帶回到您最初想去的頁面(如果該塊已過期),如下所示:

<a id="lbClickHereLink">back</a></br>

然后,在附加代碼(在browser.js文件中)中設置此lbClickHereLink ,如下所示:

    // Update hyperlink to blocked page
    var clickHereLink = doc.getElementById("lbClickHereLink");
    if (clickHereLink != null) {
        clickHereLink.setAttribute("href", blockedURL);
    }

現在,我還在其他上下文中使用了該html頁面(這基本上是一個待辦事項列表),並且我認為,如果我實際上是從被阻止的頁面到達此鏈接的,那真的很整潔。 (否則它只是空的。)

所以我嘗試了這個(在html文檔中):

<script>
var leechlink = document.getElementById("lbClickHereLink");
if(leechlink.getAttribute("href") == null)
   leechlink.innerHTML = "";
</script>

但這是行不通的,因為在加載html頁面時,顯然還沒有執行該加載項中的腳本。 因此,鏈接永遠不會存在。

所以我的問題是:

在加載項中的代碼執行 ,是否可以使上述腳本執行?

在一個“教人做魚”的旁注:我可以讓firefox調試器向我展示頁面上正在執行的所有javascript代碼,而不僅僅是html文檔中的內容嗎?

由於插件腳本在難以訪問(但並非並非不可能)的沙箱中運行,因此編輯插件並用更好的內容替換您不喜歡的html頁面可能更容易。

插件XPI只是zip文件,大多數包含一些特定於瀏覽器特定代碼的標准Web技術,javascript,CSS,HTML / XML。

如果您確實想在不修改插件的情況下進行操作,則可以使用突變觀察器來監視HTML的更改並查找特定於所討論插件的html結構。

釣魚:使用瀏覽器工具箱

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM