通过createElement_x_x创建的iframe的onload事件在有些时候不响应,具体原因和解决办法如下。首先,我们来看一下下面这种方法: function?createFrame(){?var?frame = document.cerateElement("iframe");frame.onload =?function(){alert("loaded - createFrame");}frame.src =?"http://www.phper.org.cn";document.body.a(frame);}这一段在FF下是完全如我们所想,能够达到预期效果,但是在IE下面似乎就失效了,导致这种结果的原因...
网页的标准,IMG不支持onload标签怎么办 这个记得以前有人问过我,但是我那时还没有注意这些. 现在终于遇到这个问题了.因为 img 标签是没有 onload 事件的.所以 UBB 代码中的img用到的onload来处理大的图片进行自适应,这样的办法就不能采取了.但是经过测试,body还是可以带onload事件的, 所以我解决的办法就是在页面全部加载完后再处理太大的图片.于是我用JS写了一段简单的代码相关代码 function ReImgSize(){for (j=0;j<document.ima...
如果 标签的 src为一个 gif 动画,那么他的 onload事件会重复触发。 firefox就没有这样的问题。 //by Go_Rush(阿舜) from http://ashun.cnblogs.com/ function gorush(obj){ alert("如果img的src为多帧gif动画,这个会重复弹出") } 解决办法: //by Go_Rush(阿舜) from http://ashun.cnblogs.com/ function gorush(obj){ alert("这样,就只会弹出一次") obj.onload=null; } 如果 src设置为 静态 gif 或者 jpg ,bmp等其他格...
图片的onload事件,相信大家都经常用到,尤其在控制图片的输出大小的时候。 但onload还有一些特殊的用法。比如说最近我在做ajax,需要在onload的时候加载,一般都会使用window的onload事件,但window的onload事件必须在加载完所有的html元素后才执行(包括所有的图片,如果页面上有图片丢失就麻烦了)。 很多JS的库类,比如说jquery和prototype都有相对的函数来模拟实现。 我们同样可以使用图片的onload方...
把两段代码分别测试后发现不带括号的window.onload在页面加载后显示了正确的效果。 我想window.onload也相当于一个触发事件,如果函数加了括号那就直接先执行函数,再加载body。而不加括号,则相当于将一个函数当作变量赋值到window.onload上,并不立即加载。 代码一: window.onload = doIt(); function doIt() { var oDiv = document.getElementById("div1"); alert (oDiv); } [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行...
1.使用attachEvent给onload添加所需运行的函数 代码如下:if (document.all) { window.attachEvent(onload, FuncName) } else { window.addEventListener(load, FuncName, false); } 2.使用window.onload = function(){FuncName1(); FuncName();},直接onload两个函数。可以加一个判断, 代码如下:var o = window.onload; if ((typeof o)==function) window.onload = function(){o(); FuncName();} else window.onload = FuncName;
解决方法, 一、Mozilla 提供了一个非公开的(undocumented)函数: 代码如下:// for Mozilla browsers if (document.addEventListener) { document.addEventListener("DOMContentLoaded", init, false); } 二、对于 IE 浏览器,可以使用IE特有的 defer 属性: 代码如下: alert("DOM 加载完毕!") 具有defer属性的脚本块会在DOM 加载完毕后执行。 非IE浏览器会忽略 defer 而直接执行 script 代码,因此,你可以有两种办法来屏蔽非...
接上篇,其它方法: 一、在IE中还可以在onreadystatechange事件里进行判断 http://www.thefutureoftheweb.com/blog/adddomloadevent 这里有Jesse Skinner写了一段独立的脚本函数来解决各种浏览器的onload问题,。 http://img.jb51.net/jslib/adddomloadevent.js 代码如下:/* * (c)2006 Jesse Skinner/Dean Edwards/Matthias Miller/John Resig * Special thanks to Dan Webbs domready.js Prototype extension * and Simon Williso...
用法如下: function func(){alert("this is window onload event!");return;} window.onload=func; 或者如下: window.onload=function(){alert("this is window onload event!");return;} 但window.onload 不能同时加载多个函数。 比如: 代码如下: function t(){ alert("t") } function b(){ alert("b") } window.onload =t ; window.onload =b ; 后面会把前面的覆盖,上面代码只会输出 b。 此时可用如下方法解决: window.on...
所以如果某个图片或者其他资源加载很长时间, 访问者就会看到一个不完整的页面, 甚至在图片加载之前就执行了需要依赖动态添加的元素的脚本而导致脚本错误.window.onload = function() { testDiv.innerHTML = "动态创建的div
1.执行时间 window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。 $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕。 2.编写个数不同 window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个 $(document).ready()可以同时编写多个,并且都可以得到执行 3.简化写法 window.onload没有简化写法 $(document).ready(function(){})可以简写成$(function(){}); 在我以前的开发中...
判断iframe是否加载完成的完美方法IE 支持 iframe 的 onload 事件,不过是隐形的,需要通过 attachEvent 来注册。 第二种方法比第一种方法更完美(采用readystatechange判断),因为 readystatechange 事件相对于 load 事件有一些潜在的问题。 这里感觉说的并不是完全准确,开始给我造成了很大的困扰。看其代码才明白,真正意义上来讲IE在创建一个新的iframe时的onload方法需要使用attachEvent来绑定,而原来就存在的iframe的onload方...
假如我们有一个如下的页面: 代码如下: var init=function (){ var img=document.getElementById('image'); alert(img.offsetWidth); } window.onload=new init(); 在IE和FF下运行的时候都是可以显示图片的真实大小的,即使我并没有显示的说明这个img的width和height。但是在chrome下,则显示的是0。 但是如果将window.onload后面的new init()改为 window.onload=init 或者 window.onload=function(){new init(){}} ...
最近在改一个嵌入在frame中的页面的时候,使用了jquery做效果,而页面本身也绑定了onload事件。改完后,Firefox下测试正常流畅,IE下就要等个十几秒jquery的效果才出现,黄花菜都凉了。 起初以为是和本身onload加载的方法冲突。网上普遍的说法是$(document).ready()是在页面DOM解析完成后执行,而onload事件是在所有资源都准备完成之后才执行,也就是说$(document).ready()是要在onload之前执行的,尤其当页面图片较大较多的时...
所以相对来说jquery的ready可以提高网页的响应速度; jquery:ready的标准写法: 代码如下: $(document).ready(function() { alert("加载结束"); }); 一个$(document)将dom对象的document转化为jquery对象,继而可以调用jquery的方法ready();因为dom对象是不可以调用jquery的方法的,虽然他们的关系很亲密; jquery:ready的简写形式: 代码如下: $(function() { alert("加载结束"); }); ready函数的一个主要作用就是为dom对象注册...