2016-03-01 59 views
0

我一直在試圖弄清楚這一段時間,但我在智慧的結尾,已經放棄了所有的希望。JQuery - ScrollTop無法在Chrome擴展模塊中工作

這是我解壓Chrome擴展:nexrem.com/test/extension-test2 - Copy.zip

附件A:

  • 導航到Chrome中的模板文件夾
  • 運行的test.html
  • 單擊 「頁腳鏈接」
  • 觀察它正確滾動頁腳

附件B:目前,擴展基本上取代了頁面上的整個html。

  • 安裝解壓擴展
  • 去一些網站(用於測試的緣故,一個不擺滿了各種腳本。或者只是做一個國內空白的html文件)
  • 點擊在鉻

您將看到完全一樣的頁面,當您剛跑了test.html的擴展圖標;但是,jQuery的滾動不再起作用。我不明白爲什麼。

如果有人能向我解釋這一點,請協助解決方案或至少指出正確的方向,我將不勝感激!

回答

1

根據load

jQuery使用瀏覽器的.innerHTML屬性來解析檢索文檔,並將其插入到當前文檔。在此過程中,瀏覽器通常會過濾文檔中的元素,例如<html>,<title><head>元素。結果,通過​​檢索的元素可能不完全相同,就好像文檔被瀏覽器直接檢索一樣。

在您點擊瀏覽器動作後,深入您的html代碼後,似乎沒有包含body標籤。

您可以使用下面的代碼,而不是load

var template = chrome.extension.getURL('template/test.html'); 
    console.log(template); 

    $.get(template, function(data) { 
     document.open(); 
     document.write(data); 
     document.close(); 
     $.cache = {}; 
    }, "text");