浏览 1626 次
锁定老帖子 主题:诡异的A标签
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-11-16
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>诡异的A标签</title> <meta name="Generator" content="EditPlus"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name="Description" content=""> <script> //关于this function dododo(src){ alert(src==window); } function hrefOrClick(val){ alert(val); } </script> </head> <body> <a href="javascript:dododo(this)">dododo</a><br/> <a href="javascript:!function(){}">取个反试试</a>(注意浏览器之间的不同哦)<br/> <a href="javascript:hrefOrClick('href')" onclick="hrefOrClick('click')">猜猜先执行哪个?</a><br/> </body> </html> 上文中一共三处A标签: 第一个在对href属性进行设置执行javascript函数时,这时会有个陷阱,当你传入this时,或得到的却是Window对象. 第二个A标签没太大意义,在IE,FF下执行时页面会跳转到空白,并且只有一个false,谷歌浏览器没反应,Opera没装,所以不知道,希望回帖者可以把结果奉上。 第三个只是为了告诉大家href标签属性和click事件的执行顺寻而已。 献丑了 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-11-16
基础不好害死人啊!
|
|
返回顶楼 | |
发表时间:2011-11-16
是你用得太诡异了......
href里面写js代码就和在浏览器地址栏里敲一样的道理 最后一个,click事件逐层冒泡,如果最终没有被拦截(cancelBubble|stopEvent)或取消(preventDefault),才会执行默认操作,即跳转链接。 |
|
返回顶楼 | |
发表时间:2011-11-16
楼上过奖了,我只是拿出来给大家分享一下,至于原理还是懂的。希望大家都能够留意到这一点
|
|
返回顶楼 | |