我有一个href:
<a href="#" id="my_href">here we go</a>
我的jQuery是:
$('#my_href').on('click', function(e) {
e.preventDefault();
//$(this).attr('http://www.google.com').click(); // <== I tried also this
$(this).attr('href', 'http://www.google.com').trigger('click');
});
我想要的只是当用户点击href时,href必须更改href
属性并关注该链接。
以上代码(两个示例)都不起作用。请问我在哪里做错了?
答案 0 :(得分:3)
您正在导致无限循环,因为触发click()会导致它继续调用该函数。您需要取消绑定点击或不取消点击方法。
$('#my_href').on('click', function(e) {
e.preventDefault();
$(this)
.attr('href', '//www.example.com')
.off("click")
.get(0).click();
});
或只是
$('#my_href').on('click', function (e) {
$(this).attr('href', '//www.example.com');
});
答案 1 :(得分:2)
我认为这就是你要找的东西
$('#my_href').on('click', function(e) {
e.preventDefault();
window.location.href = 'http://www.google.com';
});
答案 2 :(得分:-2)
使用此代码
$('#my_href').on('click', function(e) {
e.preventDefault();
$(this).attr('href','http://www.google.com').click();
});