我想在网页上创建一个链接,将关闭浏览器中当前活动的选项卡,而不关闭浏览器中的其他选项卡。当用户单击关闭链接时,将出现一条警告消息,要求用户使用“YES”和“NO”两个按钮确认。如果用户单击“是”,关闭该页面,如果“否”,什么都不做。
怎样才能做到呢?有什么建议吗?
我想在网页上创建一个链接,将关闭浏览器中当前活动的选项卡,而不关闭浏览器中的其他选项卡。当用户单击关闭链接时,将出现一条警告消息,要求用户使用“YES”和“NO”两个按钮确认。如果用户单击“是”,关闭该页面,如果“否”,什么都不做。
怎样才能做到呢?有什么建议吗?
当前回答
据我所知,在Chrome或FireFox中已经不可能了。这在IE中仍然是可能的(至少在edge之前)。
其他回答
这是解决这个问题的一种方法,像这样声明一个JavaScript函数
<script>
function Exit() {
var x=confirm('Are You sure want to exit:');
if(x) window.close();
}
</script>
在HTML中添加以下行,使用<button>调用函数
<button name='closeIt' onClick="Exit()" >Click to exit </Button>
以下工作为我在Chrome 41:
function leave() {
var myWindow = window.open("", "_self");
myWindow.document.write("");
setTimeout (function() {myWindow.close();},1000);
}
我尝试了几个FF的想法,包括打开一个实际的网页,但似乎都不起作用。据我所知,任何浏览器都会用xxx.close()关闭一个标签或窗口,如果它真的是由JS打开的,但FF,至少,不能通过在标签中打开新内容来关闭一个标签。
仔细想想,这是有道理的——用户可能不希望JS关闭一个有有用历史记录的选项卡或窗口。
据我所知,在Chrome或FireFox中已经不可能了。这在IE中仍然是可能的(至少在edge之前)。
window.close()在2k21中不起作用,因为脚本可能只关闭由它们打开的窗口。
但是如果标签在浏览器中不是手动打开的,而是自动打开的,那么window.close()就可以工作了。
自动(当close()工作时):
<a href="/close" target="_blank">浏览器将在新选项卡中打开地址,该选项卡可以用close()关闭 当新的浏览器标签从另一个应用程序打开(当你点击一个链接在Telegram/Whatsup/Outlook等)-操作系统将打开新的标签,它可以关闭close() 当你用window.open('ya.ru')打开时,当然可以用close()关闭它
手动(当它不工作时):
当你打开新的浏览器并输入地址。 当您单击(+)打开新选项卡,并键入地址
<button class="closeButton" style="cursor: pointer" onclick="window.close();">Close Window</button>
这对我来说很有效