javascript代码优化笔记

1.HTML中调用javascript的方法
1)“javascript:"伪协议
<a href="javascript:jumpFunc('http://ihaha.net');">注意双引号中使用单引号,实在不行用转义反斜杠。

2)事件处理
<a href="#" onClick="popup('http://ihaha.net');return false;">return false取消了默认的链接行为,用onClick来替代。</a>
这里对#稍作说明,#表示未指向任何目标的内部链接,有些浏览器将其指向文档开头。这也是很多回到顶部按钮的做法。

以上两种方法当禁用javascript时将会失效,另外搜索引擎也搞不定类似的链接,对搜索引擎很不友好,后果很严重。

2.平稳退化
下面的写法在浏览器不支持javascript时,也可以使用。
<a href="http://ihaha.net" onClick="popup('http://ihaha.net');return false;"></a>
<a href="http://ihaha.net" onClick="popup(this.getAttribute('href'));return false;)"></a>
<a href="http://ihaha.net" onClick="popup(this.href);return false;)"></a>

3.javascript的精简
为了网络访问速度快,可以将javascript中不必要的注释,空行等删除。通常我们需要保留两个版本,一个是网站上用的版本,一个是用于开发维护的版本,精简版本通常添加名字 scriptname.min.js
js代码精简工具 JSMin,YUI Compressor,Closure Compiler等等。

4.html和javascript分离例子

html代码

<script src="javascript.js"></script>
<a href="http://ihaha.net" id="superlink">ihaha</a>
js代码

link.onclick = func; /* func一定是函数地址的形式,不能带括号,如果带了括号则会直接执行了,不会赋值给onclick */

/*该脚本实现屏蔽默认的超链接,替代的是在一个跳出窗口中打开链接。 */
/* 不同浏览器支持不同,本脚本在safari中测试NG,firefox测试OK */
function popup(url)
{
	window.open(url, "popup", "width=320,height=480");
}

window.onload =  //将代码放在window.onload中,确保整个html加载完成,DOM完整。
function(){ //必须使用函数(匿名,或者有名字均可),赋值给onload才可以。
	// 可以用这样的方法来检查浏览器是否支持当前功能,注意getElementId后面不能加括号,否则成了函数。
	if(!document.getElementId)
	{
		return false; 
	}
	var superlink = document.getElementById("superlink");
	superlink.onclick = function(){ popup(superlink.href);return false; } //必须使用函数
}

<完>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值