Ištrūkti iš „iframe“ CSS-gudrybės

Turinys
if (top.location!= self.location) ( top.location = self.location.href; )

Paprastai tai pavyks, tačiau yra maža nesėkmės tikimybė tuo atveju, kai windowtai nepaisoma. Štai keletas protingų Nathan Smith alternatyvų:

 // Break out of an iframe, if someone shoves your site // into one of those silly top-bar URL shortener things. // // Passing `this` and re-aliasing as `window` ensures // that the window object hasn't been overwritten. // // Example: // var window = 'haha, punked!'; // // Note: Probably unnecessary, but just for kicks. (function(window) ( if (window.location !== window.top.location) ( window.top.location = window.location; ) ))(this); 
 // A more cryptic one-liner, to awe & impress. // // No need to protect `window` since `this` is // immutable, and at the topmost level means // `window` anyways. Here, we compare locations // on the left side of the "&&" and execute the // code in parenthesis if that condition is // true (top location isn't iframe location). // // Otherwise, nothing happens. It's basically an // if statement without wrapping curly brackets. // // Weird, I know. But pretty cool, right? :) this.top.location !== this.location && (this.top.location = this.location); 

Įdomios straipsniai...