$(document).ready
(
function()
{
}
);
看到一个页面里的这种结构,不知道是页面自己写的还是javascript规定的?
(
function()
{
}
);
看到一个页面里的这种结构,不知道是页面自己写的还是javascript规定的?
解决方案 »
- 【求助】怎样实现当上传大文件时,显示一张等待的图片啊???
- 数组直接量中省略的元素是否存在?
- 关于原型继承?
- Ext.ux.data.PagingMemoryProxy为空或不是对象
- 看下这个简单的闭包.
- 求一个兼容Firefox的日期控件
- 一个正则表达式写法?
- 怎样判断复选框的选中状态?
- 对于一个表单,可以写JS动态的添加元素,如表单table;table.appendChild(Element),但是我使用table.removeChild(Element),就不行了?如何动态的删除一个表单元素?
- 怎么做一个充值的界面啊,能传数据到后台的
- jquery查找直接子类
- 关于Google在线翻译API的一些问题
$(document).ready 是Jquery框架里的东西 代替原生javascript的 window.onload事件用
其实现为:var ready=function(readyCall) {
if(document.addEventListener)
document.addEventListener("DOMContentLoaded",function() {
document.removeEventListener("DOMContentLoaded",arguments.callee,false);
readyCall();
},false);
else if(document.attachEvent) {//for IE
if(document.documentElement.doScroll && window.self==window.top) {
(function() {
try {
document.documentElement.doScroll("left");
}catch(ex) {
setTimeout(arguments.callee,5);
return;
}
readyCall();
})();
}else {//maybe late but also for iframes
document.attachEvent("onreadystatechange",function() {
if(document.readyState==="complete") {
document.detachEvent("onreadystatechange", arguments.callee);
readyCall();
}
});
}
}
}
回楼上的 这个我当然知道 我只是告诉楼主 可以当做原生的onload用
domReady的实现方式很多
也可以用
document && document.getElementsByTagName && document.getElementById && document.body
用setInterval 去不断探取 一样可以达到domReady的效果并不是就JQ 那么一种方案
而 你说的 相当于把script放到body后面 却是有问题的...
现在FF 浏览器 也实现了 缓存机制 所有其实window.onload 有可能更先去执行的
记得以前查过dom,不过没有理解
这版 没有JQ的好 但思想就是这样子 可以实现ready var $ready = function(f){
// 如果Dom加载完毕 那么就直接执行函数
if($ready.done) return f();
// 如果已经绑定了一个函数
if($ready.timer){
// 将下个函数排队
$ready.ready.push(f);
}else{
// 由于firefox的缓存优化有可能onload早于dom加载完毕
window.onload = $isReady;
// 将函数保存起来
$ready.ready = [f];
// 不断的通过$isReady函数去判断是否加载完毕
$ready.timer = setInterval($isReady, 13);
}
}; var $isReady = function(){
// 如果已经完毕 则返回即可
if($ready.done) return false;
// 通过几个元素特性 不断判断document等是否完全加载完毕
if(document && document.getElementsByTagName && document.getElementById
&& document.body){
// 如果完毕. 停止检测时钟. 清空变量 循环执行函数 将done标志置为完毕
clearInterval($ready.timer);
$ready.timer = null;
for(var i = 0; i < $ready.ready.length; i++){
$ready.ready[i]();
}
$ready.ready = null;
$ready.done = true;
}
};// 使用方法
$ready(function(){
alert('dom is onload');
// DOM已经确保加载完毕,可以进行相关操作
});
Dom具有对Html文件和XML文件元素的访问控制能力,简单点说利用Dom可以对某个html或xml文件添加,修改,删除元素.更改其现有的结构或内容.
如果你未接触过Dom,你会发现Dom太神奇了...不管你是菜鸟还是高手,在这个注重用户体验的web设计时代里,Dom是至关重要的. 如果你是一名有经验的web设计者,你应该看到过或用过以下这些命令或方法 getElementById getElementsByTagName offsetParent appendChild getAttribute 不过至今仍有人认为这些都是JavaScript中的东西,其实不然,这些全是Dom中很重要的方法!
----------
});
这些事需要自己加的,目的是为了加载当前页面,只需要记住就行了,每次用的时候套在最外层十有八九没错