由于第一个html页面的JavaScript eventlistener的输出,在第二个html中更新图像的源

由于第一个html页面的JavaScript eventlistener的输出,在第二个html中更新图像的源,javascript,html,Javascript,Html,为了给大家介绍一下,我正在自己搞网络开发,所以我没有太多的知识,我希望你能帮我解决这个问题 所以这个概念在HTML第1页,我选择了一个图像,由于点击,我在第二个HTML页面中更改了它 这是链接到第一个html页面的js文件。在这里,我将所选图像的源存储在变量result中 result=""; document.getElementById("choice1").addEventListener("click", function() { var elem =document.getElem

为了给大家介绍一下,我正在自己搞网络开发,所以我没有太多的知识,我希望你能帮我解决这个问题

所以这个概念在HTML第1页,我选择了一个图像,由于点击,我在第二个HTML页面中更改了它

这是链接到第一个html页面的js文件。在这里,我将所选图像的源存储在变量result中

result="";

document.getElementById("choice1").addEventListener("click", function() { 
var elem =document.getElementById("choice1");
result = window.getComputedStyle(elem, null).getPropertyValue("background-image");
return result
});

document.getElementById("choice2").addEventListener("click", function() { 
var elem =document.getElementById("choice2");
result  = window.getComputedStyle(elem, null).getPropertyValue("background-image");
return result
});

document.getElementById("choice3").addEventListener("click", function() { 
var elem =document.getElementById("choice3");
result  = window.getComputedStyle(elem, null).getPropertyValue("background-image");
return result

});
第二个html如下所示。当我通过上面的js文件在第一个html上选择另一个图像时,应该更改图像的来源(这里设置为nature)

<!DOCTYPE html>
    <html>
    <head>
      <link rel="stylesheet" href="style2.css">
    </head>
    <body>

    <img id="current" src="nature.jpg" width="100%" height=auto>


    <script src="main.js"></script>
    <script src="expose.js"></script>

    </body>
    </html>
谢谢你的帮助!
(注:我不喜欢使用本地存储)

我认为这一切都取决于您如何提供html文件。您有两种选择。请记住,您试图在页面加载之间记住一些内容。这意味着要么将其记录(最好是在本地存储中),要么将其作为URL参数传递到URL中,然后让您的page 2 JS解析URL中的参数。顺便说一句,您也可以使用cookies。我想,只有在同一设备内处理两个html页面时,本地存储才会起作用?(不太熟悉本地存储)在我看来,最好的方法是使用WebSocket。这样,您就可以通过服务器在选项卡之间进行日常通信。选项卡1将通知源已更改,信息将立即推送到选项卡2。但对于那些正在探索web开发的人来说,这可能仍然是遥不可及的
setInterval(currentStatus,3000)

currentStatus{

    if(document.getElementById("current").src !== result) {

        document.getElementById("current").src = result
        console.log("changes applied")

    } else {
        console.log("nothing changed")
    }
}