开发者

Not working loaded jquery file in the content_script in chrome extension

I am new to this chrome extension plugin development. I am developing a new new plugin using this chrome extension.

My requirement is load jquery.js file into the content script when it is not having that js file(For Ex: I am checking for jquery.js file,fancybox.js file and if it is not there load these files. )

When i implement this logic in content script it is loading the jquery.js file. After that it is not working in content script . It is showing $(or) jQuery is undefined. For every time it is loading,but not executing in the content script.

Here is the code what i implemented.

document.getElementById('someid').oncli开发者_C百科ck = 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);

}
}

Please suggest on this.

Thanks.


Chrome Extensions do not have access to the scripts the web page loads and uses.

Google calls this isolated worlds:

http://code.google.com/chrome/extensions/content_scripts.html

You cannot...

Use variables or functions defined by their extension's pages

Use variables or functions defined by web pages or by other content scripts

So, it doesn't matter what scripts are there. What matters is that you include the scripts you need in your manifest:

"content_scripts": ['jquery.js', 'myScript.js', 'optionsScript.js'],

The order of the list matters so if your script uses jquery then jquery.js should precede it.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜