在前端标签
<a>
的执行过程中遇到问题,发现了
href
与
js(onclick)
的触发是存在先后顺序的。
优先级:
onclik
>
href
如果不需要
href
的跳转可以使用
event.preventDefault()
方法置于
onclick
函数中。
如果只是把
<a>
作为按钮使用可以使用
href="javascript:void(0);" target="_blank" rel="external nofollow"
。
<a href="index" onclick="toIndex(this)">
<script type="text/javascript">
function toIndex(e){
if(e.href=="index"){
...
retrun true;
}else{
...
retrun false;
}
}
</script>
在上述例子中
toIndex()
函数将先被执行,需要注意的是:当函数返回
false
时,
href
将不再被执行;当函数返回
true
或者在函数中出现错误时,
href
将继续被执行。
参考:
-
标签href跟onclick事件的触发顺序<a>
-
标签的href和onclick属性<a>