JavaScript平稳退化

JavaScript平稳退化
让那些不支持或禁用了JavaScript功能的浏览器也能顺利地访问你的网站
从CSS身上借鉴,结构与样式分离。
如果我们用一个“挂钩”,就像CSS机制中的class或id属性那样,把JavaScript代码调用行为与HTML文档的结构和内容分离开,网页就会健壮得多。
那么,可否用下面这条语句来表明“当这个链接被点击时,它将调用popUp()函数”的意思呢?
<a href=“http://www.sohu.com/“ class=“popup”>Example</a>
完全可以这样做,JavaScript语言不要求事件必须在HTML文档里处理,我们可以在外部JavaScript文件里把一个事件添加到HTML文档中的某个元素上:
element.event=action…


必须让这些代码在HTML文档全部加载到浏览器之后马上开始执行。还好,HTML文档全部加载完毕时将触发一个事件,这个事件有它自己的事件处理函数。
文档将被加载到一个浏览器窗口里,document对象又是window对象的一个属性。当window对象触发onload事件时,document对象已经存在。
我将把我的JavaScript代码打包在prepareLinks函数里,并把这个函数添加到window对象的unload事件上去。这样一来,DOM就可以正常工作了。


test.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>Image Test</title>
</head>
<body>
<h1>JavaScript实验</h1>
<script type="text/javascript" src="scripts/jsTest.js"></script>
<a href="http://www.sohu.com" class="popup">sohu</a>
</body>
</html>




jsTest.js:
window.οnlοad=prepareLinks;
function prepareLinks()
{
var links = document.getElementsByTagName("a");
for(var i=0; i<links.length;i++)
{
if(links[i].getAttribute("class")=="popup")
{
links[i].onclick = function()
{
popUp(this.getAttribute("href"));
return false;
}
}
}
}


function popUp(winUrl)
{
window.open(winUrl,"popup","width=320,height=480");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值