我有一个<a>
,当我单击它时,我想先运行一个函数,然后<a>
URL将我带到另一个页面。
HTML:
<a class="goTo" href="./projects.html"> Projects </a>
<a class="goTo" href="./about.html"> About</a>
JS
$('.goTo').click(function(e) {
e.preventDefault()
return x()
})
答案 0 :(得分:0)
只需删除e.preventDefault()
。
事件处理程序在默认操作之前运行(在链接的情况下,默认操作是使浏览器导航到另一个页面)。
$('.goTo').click(function(e) {
return x()
})
function x() {
alert("Function x");
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="goTo" href="http://example.com"> Example </a>
答案 1 :(得分:-1)
HTML:
<a class="goTo" href="./projects.html" onClick="doSomething(this)"> Projects</a>
<a class="goTo" href="./about.html" onClick="doSomething(this)"> About</a>
Javascript:
function doSomething(element){
someFunction();
//use element.href to get the href attribute of the element
location.href = element.href;
}
jQuery(替代):
$('.goTo').click(function(e){
someFunction();
location.href = $(this).attr('href');
});
JSFiddle:http://jsfiddle.net/nt0xfp48/1/