论坛首页 Web前端技术论坛

诡异的A标签

浏览 1580 次
精华帖 (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事件的执行顺寻而已。

献丑了
   发表时间:2011-11-16  
基础不好害死人啊!
0 请登录后投票
   发表时间:2011-11-16  
是你用得太诡异了......
href里面写js代码就和在浏览器地址栏里敲一样的道理
最后一个,click事件逐层冒泡,如果最终没有被拦截(cancelBubble|stopEvent)或取消(preventDefault),才会执行默认操作,即跳转链接。
0 请登录后投票
   发表时间:2011-11-16  
楼上过奖了,我只是拿出来给大家分享一下,至于原理还是懂的。希望大家都能够留意到这一点
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics