Skip to content

Instantly share code, notes, and snippets.

@mathiasbynens
Created August 13, 2011 13:21
Show Gist options
  • Star 23 You must be signed in to star a gist
  • Fork 6 You must be signed in to fork a gist
  • Save mathiasbynens/1143845 to your computer and use it in GitHub Desktop.
Save mathiasbynens/1143845 to your computer and use it in GitHub Desktop.
`unsafeWindow` polyfill (for use in user scripts)
// ==UserScript==
// @name Emulate `unsafeWindow` in browsers that don’t support it.
// ==/UserScript==
// http://mths.be/unsafewindow
window.unsafeWindow || (
unsafeWindow = (function() {
var el = document.createElement('p');
el.setAttribute('onclick', 'return window;');
return el.onclick();
}())
);
// You can now use `unsafeWindow`, ehm, safely.
console.log(unsafeWindow);
// If the current document uses a JavaScript library, you can use it in
// your user script like this:
console.log(unsafeWindow.jQuery);
@yahelc
Copy link

yahelc commented Aug 7, 2013

It seems like this no longer works in Chrome 29.

@mathiasbynens
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment