我有一个特定链接的点击处理程序,在里面我想做类似于以下的事情:
window.location = url
我需要这个才能在新窗口中实际打开 url,我该怎么做?
我有一个特定链接的点击处理程序,在里面我想做类似于以下的事情:
window.location = url
我需要这个才能在新窗口中实际打开 url,我该怎么做?
你可以喜欢:
window.open('url', 'window name', 'window settings')
jQuery:
$('a#link_id').click(function(){
window.open('url', 'window name', 'window settings');
return false;
});
你也可以设置target
为_blank
实际。
以下是在点击处理程序中强制目标的方法:
$('a#link_id').click(function() {
$(this).attr('target', '_blank');
});
你需要使用 window.open(url);
参考资料:
http : //www.htmlcodetutorial.com/linking/linking_famsupp_120.html
http://www.w3schools.com/jsref/met_win_open.asp
您也可以为此使用 jquery prop() 方法。
$(function(){
$('yourselector').prop('target', '_blank');
});
我刚刚找到了一个有趣的解决方案。我正在创建包含基于 Web 服务返回信息的跨度。我想尝试在跨度周围放置一个链接,这样如果我点击它,“a”就会捕获点击。
但是我试图用跨度捕捉点击......所以我想为什么在我创建跨度时不这样做。
var span = $('<span id="something" data-href="'+url+'" />');
然后我将一个点击处理程序绑定到基于“data-href”属性创建链接的跨度:
span.click(function(e) {
e.stopPropagation();
var href = $(this).attr('data-href');
var link = $('<a href="http://' + href + '" />');
link.attr('target', '_blank');
window.open(link.attr('href'));
});
这成功地允许我点击一个跨度并打开一个带有正确 url 的新窗口。