Trying To Map SomeFunction.jQuery To "$"
I found a function (via this person's github) that I might use in my script that mimics the functionality of an API object. Here's the relevant code from the link: unsafeWindow = (
Solution 1:
You would map $
to unsafeWindow.jQuery
like so:
unsafeWindow = ( function () {
var dummyElem = document.createElement('p');
dummyElem.setAttribute ('onclick', 'return window;');
return dummyElem.onclick ();
} ) ();
var $ = unsafeWindow.jQuery;
// Now you can use the page's jQuery. EG:
$("body").append ('<p>Content added by unsafeWindow.jQuery</p>');
But keep in mind:
This is a Hack, and it will probably stop working around Chrome version 28.
It may still fail due to a race condition about when userscripts fire. To fix that, add
// @run-at document-end
to the userscript's metadata block.Don't do things this way! It will only cause grief, side effects and maintenance headaches.
For userscripts: use this technique (best cross-browser) or this technique (relies on page's jQuery, but the example shows how to use GM_ functions too).
For full extensions or content scripts:, use this technique (use the
manifest.json
and keep everything properly sandboxed).
Post a Comment for "Trying To Map SomeFunction.jQuery To "$""