Break Out of Frames Using JavaScript
I thought frames went out of style a decade ago but apparently everyone feels the need to duplicate the Digg Bar. I don't trust these framed services so I choose to use a JavaScript snippet that prevents my site from being in someone else's frame.
The JavaScript
if (top.location != self.location) {
top.location = self.location;
}
Don't let your site be framed in! Use this JavaScript snippet!
![5 More HTML5 APIs You Didn’t Know Existed]()
The HTML5 revolution has provided us some awesome JavaScript and HTML APIs. Some are APIs we knew we've needed for years, others are cutting edge mobile and desktop helpers. Regardless of API strength or purpose, anything to help us better do our job is a...
![CSS @supports]()
Feature detection via JavaScript is a client side best practice and for all the right reasons, but unfortunately that same functionality hasn't been available within CSS. What we end up doing is repeating the same properties multiple times with each browser prefix. Yuck. Another thing we...
![Style Textarea Resizers]()
Modern browsers are nice in that they allow you to style some odd properties. Heck, one of the most popular posts on this blog is HTML5 Placeholder Styling with CSS, a tiny but useful task. Did you know you can also restyle the textarea resizer in WebKit...
![Drag and Drop MooTools File Uploads]()
Honesty hour confession: file uploading within the web browser sucks. It just does. Like the ugly SELECT element, the file input is almost unstylable and looks different on different platforms. Add to those criticism the fact that we're all used to drag and drop operations...
haha, I really like this. I agree with your thoughts on frames.
I thought I’d seen that for the last time last millennium! Although I also agree with the nasty framed services – so might have to join in and add it to my site too :) Obvious, but very easy to not think of
This is the very same basic technique for preventing clickjacking. Basic, because it doesn’t work in IE, if your site is framed with security=”restricted”
As seen on The Good Parts… shouldn’t you use !== instead of != for comparisons like this one?
d.
haha!
this is first javascript that i learn when i was baby :D
David,
i agree. I saw a few articles ranting about the Digg bar when it came out and one of them had this same solution – so I added it. Works great!
Just had an idea though – what if you could recognize where the bar was coming from (like Digg) and get rid of the bar but add some little area to your page that recognizes the user and the functionality they might want. For Digg, just add a little Digg this button or whatever the Digg bar offers. Facebook, Hootsuite, a few others that I know of.
It would be similar to the WP Greet Box Plugin that gives a quick message depending on where visitors come from.
This way you lose the bar, but keep the sharing aspects and make it look like it fits your site.
-Marty
I like frames sometimes. I think the Diggbar is really useful. However frames can be over used like you say.
I use this on one of my sites. It works OK and you need just 2 lines of javascript. Personaly I hate frames. This was popular years years ago.
Wow, haven’t seen this piece of code in 8-10 years, when using frame was the norm.