在标签之间切换而无需重新加载,并限制使用相同的网址打开新标签

时间:2019-01-29 13:42:08

标签: javascript html html5

我有一个场景,其中有2个html页面。在两个html页面上,我都有其他html页面的链接。所以我的要求是: 1.当我打开第一个HTML页面并单击指向HTML2的链接时,应在同一窗口中打开新标签页。 HTML 2页面具有HTML1的链接。因此,当我单击HTML1时。在tab1中已经打开的HTML页面应该集中。 2.在选项卡之间切换时,不应重新加载页面。 3.现在假设我在窗口中打开了2个选项卡(HTML1和HTML2)。当我尝试手动将HTML1网址复制并粘贴到tab3中时,应将重点放在Tab1上。

我已经使用以下代码来实现第1点和第2点,但是努力达到第3点。任何线索都将有所帮助。

 //HTML1

<html>
<head>
<title>HTML1</title>
<script type="text/javascript">
window.onload = function (){
window.name = "HTML1"
}   
var windowObjectReference = null; // global variable
function openHTML2App() {
if(windowObjectReference == null || windowObjectReference.closed)
{
    windowObjectReference = window.open("file:///D:/HTML2.html","HTML2");
    console.log("in if");
}
else
{
    windowObjectReference.focus();
    console.log("In else");
};
}
</script>
</head>
<body>
<h1>This is HTML1</h1>
<a target="HTML2" onclick="openHTML2App(); return false;" >This is link for HTML2</a>
</body>
</html>

//HTML2

<html>
<head>
<title>HTML2</title>
<script type="text/javascript">
window.onload = function (){
window.name = "HTML2"
}
var windowObjectReference = null; // global variable
function openHTML1App() {
if(windowObjectReference == null || windowObjectReference.closed)
{
    windowObjectReference = window.open("","HTML1");
}
else
{
    windowObjectReference.focus();
};
}
</script>
</head>
<body>
<h1>This is HTML2</h1>
<a href = "file:///D:/HTML1.html" target="HTML1" onclick="openHTML1App(); return false;" >This is link for HTML1</a>
</body>
</html>

实际结果:每次切换选项卡时都会重新加载页面。手动在新选项卡中输入URL时,将打开带有URL的新选项卡。 预期结果是: 1.在选项卡切换页面上,不应重新加载。 2.如果已经打开,则限制打开的URL,而只关注已打开的URL

1 个答案:

答案 0 :(得分:2)

出于安全原因,您不能强迫用户导航到另一个选项卡。