在我的项目中,有几个div元素包含onclick事件,如下所示:
<div id='main'>
<div onclick='window.open("/folder/file.php", "_self")'>
Content
</div>
<div onclick='window.open("/folder/file.php", "_self")'>
Content
</div>
<div onclick='window.open("/folder/file.php", "_self")'>
Content
</div>
<div onclick='window.open("/folder/file.php", "_self")'>
Content
</div>
</div>
我现在的问题是,此页面可以在普通浏览器窗口中打开,也可以在弹出窗口中打开。如果在弹出窗口中打开此页面,我希望在父窗口中打开所有这些onclick链接。 有没有办法用javascript或者甚至用jquery来实现它?
答案 0 :(得分:1)
定义您自己的函数以打开URL,并检查该窗口是否为弹出窗口。
function my_open(url) {
if (window.opener) { // We're in a popup
window.opener.location = url;
} else {
window.location = url;
}
}
然后使用onclick='my_open("/folder/file.php")'
答案 1 :(得分:0)
这是一个关于codepen的简单示例: 我删除了div和open.window上的onlick属性,因为你想要在div下加载html内容...
使用Jquery
$('div#main div').click(function(){
$( this ).load($(this).data('url'));
});
答案 2 :(得分:0)
它应该是'_self'
<div id='main'>
<div onclick='window.open("/folder/file.php", "_self")'>
Content
</div>
<div onclick='window.open("/folder/file.php", "_self")'>
Content
</div>
<div onclick='window.open("/folder/file.php", "_self")'>
Content
</div>
<div onclick='window.open("/folder/file.php", "_self")'>
Content
</div>
</div>