易截截图软件、单文件、免安装、纯绿色、仅160KB

javascript的domReady

基本上每个库都有这东西,因为如果要对页面上的元素进行操作,我们必须等到页面加载了这个元素才行,否则会报错,但是我们很能判定某个元素是否已加载,但我们可以判定页面是否加载,这就是我们经常把代码放到window.onload = function(){}之中的缘由。但window.onload事件是待到页面上的所有资源被加载才激活,如果页面上有许多图片,音乐或falsh,而我们要操作的元素在的它们的下方呢?因此,W3C做了少有几桩好事,搞了DOMContentLoaded与addEventListener,可能也不是他们搞的,把某浏览器的私有实现盖上个大印,标明它是标准罢了,如safari的canvas,IE的getBoundingClientRect……DOMContentLoaded是DOM树完成时激活的事件,addEventListener支持多重加载与冒泡捕获。IE没有这东西,我在《javascript的事件加载》基本给出它的雏形了(注:昨天重写了该文),本文将在它的基础上进行进一步的封装与改进,如setTimeout改为零秒延迟,清除setTimeout,执行完加载后把加载函数清除掉,对IE框架结构的页面进行更安全的设置……最重要的是修正下面网友 wbkt2t 提到的在IE中的失误!
(function(){
dom = [];
var timer;
dom.isReady = false
dom.isFunction = function(obj){
return Object.prototype.toString.call(obj) === "[object Function]";
}
dom.Ready = function(handler){
dom.pollReady(); //如果没有建成DOM树,则走第二步,存储起来一起杀
if(dom.isReady){
handler()//如果已经建成DOM,则来一个杀一个
}else{
if(dom.isFunction(handler)){
dom.push(handler);//存储加载事件
}
}
};
// doScroll这个伟大的hack由牛人Diego Perini发掘出来
// http://javascript.nwbox.com/IEContentLoaded/
dom.fire = function(){//执行DOM树没有建成前加载的事件
if (!dom.isReady )
dom.isReady = true;
for (var i=0,length = dom.length; i<length; i++) {
var handler = dom[i];
handler.call(window);
}
if (timer) window.clearTimeout(timer);
dom.length = 0;//清空
};
dom.pollReady = function()


相关文档:

JavaScript 获取对象的高度和宽度详细说明

scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetL ......

JavaScript特效:纵向不间断滚动

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>纵向不间断滚动图片</title>
<meta http- ......

JavaScript特效:横向不间断滚动

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>横向不间断滚动图片</title>
<meta http- ......

c#中调用JavaScript脚本函数的一种方法

利用            Page.RegisterStartupScript("", "<script language='javascript'> results();</script>");    
      或者是         Page.RegisterClient ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号