首页 » 我的课程 » web前端 » 正文

当超级链接的onclick和href同时起作用时

大家看个 玩意儿

<a href=”http://xxx.com” onclick=”self.location=’aa.do” target=_blank>点这里</a>

不要小看这个。会有用 。譬如我希望 点了这个链接后 既跳出一个新页面(不要说window.open,各种拦截),同时执行 onclick事件 把自己转向到新页面时。

这里有个注意点,如果onclick不执行地址转向,那一点问题都没有。浏览器默认先执行onclick 然后执行href跳转(IE不考虑,我从来不用IE,不管是什么版本)

不过,经测试。在火狐或者chrome 一点没问题。但是在safari就有问题。safari依然会先执行onclick事件。然后就忽略了href里面的跳转.

解决办法只有通过 setTimeout来解决了. 在onclick事件中 写setTimeout(“self.location=’aa.do’,3000) ; 这样就能 href和click事件同时 有效果

本文共 1 个回复

  • 匿名 2017/12/14 14:47

    谢谢大师!解决了我一大问题啊!泪奔,,,

发表评论