TMS*_*TMS 16 javascript jquery href
是否可以在onclick处理程序中修改目标URL?怎么样?
我不想使用诸如window.location = ...因为它改变了浏览器的行为(点击vs ctrl-click,在新标签中打开,在特定窗口/框架中打开等等).我想要一个干净的解决方案 - 只需更改网址,其余部分应该像往常一样自行完成.
$(...).click(function () {
if (check_some_condition)
// modify target url here...
// do not want to do window.location= - this is not clean
// as it changes the browsers' behaviour (ctrl-click, opening in particular window/frame etc.)
return true;
});
Run Code Online (Sandbox Code Playgroud)
Gou*_*eau 21
尝试
?$(function(){
$("#theLink").click(function(){
$(this).attr("href","http://tnbelt.com");
});
});????
Run Code Online (Sandbox Code Playgroud)
Sel*_*gam 11
编辑:更新代码,因为首先执行事件处理程序脚本,然后执行默认操作.
添加以下版本以向您显示您可以使用,.click因为您没有注意到我与您共享的怪癖模式链接.DEMO
$(document).ready (function () {
$('#changeMe'). click (function (e) {
var goLucky = Math.floor(Math.random()*12);
if (goLucky % 2 == 0) {
this.href = "http://www.google.com";
} else {
this.href = "http://www.hotmail.com";
}
});
});
Run Code Online (Sandbox Code Playgroud)
评论e.preventDefault();&$(this).click()因为它不是必需的..
$(document).ready (function () {
$('#changeMe').one ('click', function (e) {
//e.preventDefault();
this.href = "http://www.google.com";
//$(this).click();
});
});
Run Code Online (Sandbox Code Playgroud)