我在Chrome(会话中的内容)上有重复的标签时遇到了问题,我想避免重复标签的操作(或缺少关闭重复标签的操作)。我正在打开选项卡,因为它是一个弹出窗口,没有地址栏,没有状态栏,也没有任何东西,只有窗口。无法在IE和Firefox中复制选项卡(作为弹出窗口打开)(至少我没有找到一个选项卡),但是在chrome中仍然可以。
知道如何处理吗?
谢谢!
目标
只是要澄清一下:目标是检测(并关闭)通过Chrome的“复制”右键菜单选项打开的选项卡。
第一次尝试
“复制选项卡”操作的工作原理几乎与用户在单击“返回”然后单击“转发”后重新加载页面时完全一样,因此您基本上在实现此问题的版本:
function onLoad()
{
if ($('#myStateInput').val() === '') // Load with no state.
$('#myStateInput').val('already loaded'); // Set state
else
alert("Loaded with state. (Duplicate tab or Back + Forward)");
}
这就是伟大的,但是你只需要检测,当你“复制标签”。为此,我们可以清空中的状态onbeforeunload
。之所以有效,是因为onbeforeunload
仅在用户单击“上一步”或“前进”时调用,而在复制选项卡时不会调用。
第二次尝试
function onLoad()
{
if ($('#myStateInput').val() === '') // Load with no state.
$('#myStateInput').val('already loaded'); // Set state
else
alert("Duplicate tab! Do something.");
$(window).on('beforeunload', function() // Back or Forward buttons
{
$('#myStateInput').val(''); // Blank the state out.
});
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句