2
我是新來這個Chrome擴展插件的開發。我正在開發一個使用這個擴展名的新插件。不工作在content_script加載jQuery的文件瀏覽器擴展程序
我的要求是將jquery.js文件加載到內容腳本中,當它沒有該js文件時(例如:我正在檢查jquery.js文件,fancybox.js文件,如果它沒有加載這些文件。)
當我實現內容腳本這個邏輯是加載的jquery.js文件。之後,它不在內容腳本中工作。它顯示$(或)jQuery是未定義的。每次加載時,都不會在內容腳本中執行。
下面是我實現的代碼。
document.getElementById('someid').onclick = loadJs();
function loadJS() {
if(tyof jQuery == undefined || tyof jQuery != 'function')
{
var jqscript = document.createElement('script');
jqscript.type = 'text/javascript';
jqscript.async = true;
// Src of the script
jqscript.src = "......url to jquery.js file..............";
// Check whether script is loaded or not
jqscript.onload=function(){
if ((!this.readyState || this.readyState == "loaded" || this.readyState == "complete")) {
console.log("Script loaded - ");
// It is showing error here
alert(typeof jQuery);
}
};
// Get the document header
var head = document.getElementsByTagName('head')[0];
// Add script to header - otherwise IE complains
head.appendChild(jqscript);
}
}
這個請建議。
謝謝。
如果你希望人們在回答你的問題,你應該投入一些精力在格式正確你的問題和代碼。 – 2011-01-11 13:42:32
你正在調用「內容腳本」,有很多不同的東西。從你的代碼看起來你試圖從內容腳本注入jquery到父文檔。如果你希望它在內容腳本中工作,那麼它不會,因爲內容腳本不能訪問父文檔變量。你能否重寫你的問題並將內容腳本從父文檔概念中分離出來? (這與0%的比例有什麼關係?) – serg 2011-01-11 20:09:10