href比onclick先执行

如果a标签同时有href和onclick,那么onclick先执行,然后在通过href跳转

但是有些情况需要让href先执行,在执行onclick,比如onclick中函数依赖于跳转后的window.location.href。

 

如果href和onclick是分开的,他们的执行顺序是没有办法改变的。

于是为了达到href先执行的效果,可以将二者融合起来。在onclick中先执行href跳转,在执行其他函数体:

如:

//将真正的href放到属性myhref
<a class="panel-title" id="home" myhref="#/">首页</a>

$("a").on('click', function () {
            let href = $(this).attr("myhref");
            window.location.href = href;
            /*
             最后执行依赖于href的代码 
           */ 
})     

 

posted @ 2020-02-12 19:00  Edwin_Xu  阅读(340)  评论(0编辑  收藏  举报