How do I add a loading indicator to my page while my iframe loads?

Posted by keybored on Stack Overflow See other posts from Stack Overflow or by keybored
Published on 2011-01-03T18:44:25Z Indexed on 2011/01/03 18:53 UTC
Read the original article Hit count: 188

Filed under:
|
|
|
|

I am currently creating a page where upon clicking a link an iframe is inserted into a div and it's contents loaded. I do this using the following jQuery call:

$('#mydiv').html('<iframe src="sourcelink.html" frameborder="0" width="760" height="2400" scrolling="no"></iframe>');

Sometimes the source content loads very slowly and, as a result, it looks like nothing is happening. I would like to have a simple loading animation while the content is loading while the iframe's content loads. When the iframe finishes loading it's content should pop in and the loading animation should go away.

I've been considering a couple ways I could do this (e.g. having a separate loader div to simply swap the two in and out) but I'm not sure of what the 'best' approach to solving this problem is. Perhaps I shouldn't be using .html()? I'm open to suggestion if there is a more correct solution.

© Stack Overflow or respective owner

Related posts about JavaScript

Related posts about jQuery