href="#" vs href="javascript:void(0)"
2007-09-11 14:41
288 查看
form Ajax中国
开发的时候有时需要用link(<a>)来触发一些javascript事件,所以常常可以看到如下的代码:
<a href="javascript:void(0)" xxxxx="doSomething();return false;">Link</a>
这是一个曾经被多次讨论过的问题,长期以来,我也一直是这样写的。读了 a href=”javascript:void(0);” — avoid the void 之后,我认同了作者的意见。下面的写法确实更合理:
<a href="#" xxxxx="doSomething();return false;">Link</a>
或者
<script type="javascript">function doSomething() { //doSomething return false;}</script><a href="#" xxxxx="return doSomething();">Link</a>
以往大家不使用"#"的问题是,这将导致点击链接时页面跳回页面顶部,但通过 return false 语句将使得浏览器忽略链接的默认动作,从而避免了此问题。
youngpup 更有意思,他在How to Create Pop-Up Windows 中言辞激烈的倡导大家永远永远永远不要使用 javascript: 伪协议:
Never, ever, ever use the javascript: pseudo-protocol for anything, ever ever ever ever again. Please. Pretty please.
他的解决方案是:
<a href="http://google.com/" xxxxx="window.open(this.href, 'popupwindow', 'width=400,height=300,scrollbars,resizable'); return false;"a>
这样的好处就是可以保存到书签或者收藏夹,可以左键单击,也可以右键使用!
FROM /article/5075746.html
开发的时候有时需要用link(<a>)来触发一些javascript事件,所以常常可以看到如下的代码:
<a href="javascript:void(0)" xxxxx="doSomething();return false;">Link</a>
这是一个曾经被多次讨论过的问题,长期以来,我也一直是这样写的。读了 a href=”javascript:void(0);” — avoid the void 之后,我认同了作者的意见。下面的写法确实更合理:
<a href="#" xxxxx="doSomething();return false;">Link</a>
或者
<script type="javascript">function doSomething() { //doSomething return false;}</script><a href="#" xxxxx="return doSomething();">Link</a>
以往大家不使用"#"的问题是,这将导致点击链接时页面跳回页面顶部,但通过 return false 语句将使得浏览器忽略链接的默认动作,从而避免了此问题。
youngpup 更有意思,他在How to Create Pop-Up Windows 中言辞激烈的倡导大家永远永远永远不要使用 javascript: 伪协议:
Never, ever, ever use the javascript: pseudo-protocol for anything, ever ever ever ever again. Please. Pretty please.
他的解决方案是:
<a href="http://google.com/" xxxxx="window.open(this.href, 'popupwindow', 'width=400,height=300,scrollbars,resizable'); return false;"a>
这样的好处就是可以保存到书签或者收藏夹,可以左键单击,也可以右键使用!
FROM /article/5075746.html
相关文章推荐
- javascript 超链接标记 a 的 href="#", href="javascript:void(0)" 属性
- <a href="#">与<a href="javascript:void(0)">
- href="#"与href="javascript:void(0)"的区别
- IE6不支持href="javascript:void(0)",需改为href=#
- a标签href="javascript:void(0)" href="javascript:;"
- <a href="javascript:void(0);">用法
- a href="" 和 href="#" 以及 href="javascript:void(0)"时 以及其中的 onclick 的区别
- 关于火狐和IE下href="javascript:void(0)"兼容性的问题
- javascript:void(0) javascript:; href="#"
- a href="javascript:void(0)" 是什么意思?加不加上有什么区别
- href="javascript:void(0)"
- a href="#" 与 a href="javascript:void(0)" 的区别
- [转]href="#"与href="javascript:void(0)"的区别
- IE6下<a href="#">与<a href="javascript:void(0);">的区别
- IE6下<a href="#">与<a href="javascript:void(0);">的区别
- href=“#”与href="javascript:void(0)" 的区别
- href="#"与href="javascript:void(0)"的区别
- href="javascript:void(0);" considered harmful
- IE6通过点击 <a href="javascript:void(0);"></a>方式动态创建iframe无法显示
- href="#"与href="javascript:void(0)"的区别