发布时间:2025-07-04 15:26来源:www.stxyjg.com作者:新羽手游网
$(document).ready(...) 和 window.onload 事件虽然具有类似的效果,但是,它们在触发操作的时间上存在着微妙的差异。
window.onload
当一个文档完全下载到浏览器中时,会触发 window.onload 事件。这意味着页面上的全部元素对 javascript 而言都是可以访问的,这种情况对编写功能性的代码非常有利,因为无需考虑加载的次序。
$(document).ready()
通过 $(document).ready() 注册的事件处理程序,则会在 DOM 完全就绪并可以使用时调用。虽然这也意味着所有元素对脚本而言都是可以访问的,但是,缺不意味着所有关联的文件都已经下载完毕。换句话说,当 HTML 下载完成并解析为 DOM 树之后,代码就可以运行。
電磁(Electromagnetic):
[迪安娜的光辉]HiD2电磁枪:[Deanna brilliant] HiD2 electromagnetic guns
[雅典娜的惊叹]H150磁轨炮:[Athena's amazing] H150 magnetic rail gun
粒子(Particles):
[斯劳沙的裁决]DOM电子枪:[Silao Sha ruling] DOM electron gun
[梅塔特隆的化身]MG粒子炮:[Meitatelong the embodiment of] MG particle gun
DW中的动作多用在层上,在标签→行为面板,可为多个层添加点击、经过等时发生的隐藏,显示等事件。
方法一:绑定数据在dom元素上。
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>test</title>
<script>
window.onload = function() {
var rs = document.getElementsByName('r');
var divs = document.getElementsByTagName('div');
var index = 0;
for (var i = 0; i < rs.length; i++) {
rs[i]._index = i;
rs[i].onclick = function() {
divs[index].style.display = none;
divs[this._index].style.display = block;
index = this._index;
};
}
rs[index].checked = true;
divs[index].style.display = block;
};
</script>
</head>
<body>
<input type=radio name=r>
<input type=radio name=r>
<input type=radio name=r>
<div>第一个页面</div>
<div>第二个页面</div>
<div>第三个页面</div>
</body>
</html>
------------------------------------------------------------------------------
方法二:闭包
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>test</title>
<script>
window.onload = function ()
{
var rs = document.getElementsByName('r');
var divs = document.getElementsByTagName('div');
var index = 0;
var anonymous = function (i)
{
rs[i].onclick = function ()
{
divs[index].style.display = none;
divs[i].style.display = block;
index = i;
};
};
for ( var i = 0; i < rs.length; i++)
{
anonymous (i);
}
rs[index].checked = true;
divs[index].style.display = block;
};
</script>
</head>
<body>
<input type=radio name=r>
<input type=radio name=r>
<input type=radio name=r>
<div>第一个页面</div>
<div>第二个页面</div>
<div>第三个页面</div>
</body>
</html>
------------------------------------------------------------------------
方法三:使用 let 关键字 声明
浏览器及最低版本支持
Chrome Firefox (Gecko) Internet Explorer Opera
41.0 2.0 (1.8.1) [1] 11 17
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>test</title>
<script>
window.onload = function ()
{
// Block-scoped declarations (let, const, function, class)
//not yet supported outside strict mode
use strict;
var rs = document.querySelectorAll ('input[type=radio]');
var divs = document.querySelectorAll(div);
var index = 0;
for ( var i = 0; i < rs.length; i++)
{
let j = i;
rs[i].onclick = function ()
{
divs[index].style.display = none;
divs[j].style.display = block;
index = j;
};
}
rs[index].checked = true;
divs[index].style.display = block;
};
</script>
</head>
<body>
<input type=radio name=r>
<input type=radio name=r>
<input type=radio name=r>
<div>第一个页面</div>
<div>第二个页面</div>
<div>第三个页面</div>
</body>
</html>
上一篇:启动时显示非法启动怎么解决
下一篇:梦幻龙宫怎么练
萌宠解谜类似游戏?
王者荣耀英雄训练场攻略技巧
有没有跳舞类的小游戏?
王者荣耀从青铜到荣耀王者要多少局?
穿越火线手游怎么获得屠龙者边框?
部落冲突兵种先升级哪个好
好玩的手机单机游戏有哪些
十款好玩的云游戏?
类似帝国时代的单机手机游戏?
迷你世界
类型:休闲益智
钢琴音乐大师
类型:休闲益智
开心消消乐
类型:休闲益智
我的汤姆猫
类型:休闲益智
白块儿达人-节奏钢琴黑白块
类型:休闲益智
纸嫁衣4红丝缠
类型:休闲益智
停车我最强
类型:休闲益智
贪吃蛇大作战
类型:休闲益智
米加小镇:世界
类型:休闲益智