javascript - 如何在两个不同的相同网页上显示选定的选项?
问题描述
我对网页和 HTML 很陌生,我不确定解决这个程序的最简单方法是什么。我有一个基本网页,可以从标签中获取数据,然后我有一个按钮可以将其推送到网页上的某个部分。
HTML
<div id="footer">
<p id="selectedEvent">Event</p>
</div>
<select id="currentEvent">
<option value="" disabled selected>Current Event</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
</select>
<button type="button" onclick="GetSelectedText()">Push Changes</button>
JS
function GetSelectedText() {
var e = document.getElementById("currentEvent");
var result = e.options[e.selectedIndex].text;
document.getElementById("selectedEvent").innerHTML = result;
}
我想要做的是更新在另一个选项卡中运行的此代码的另一个实例上的文本,以便两个网页在将其推送到其中一个后显示所选选项。最简单的方法是什么?
编辑 我将简要解释我的用例以获得更多有用的响应。我将其用作 OBS 的覆盖和界面作为浏览器源,因此该解决方案基本上需要能够跨不同的浏览器(例如 Chrome 和 Firefox)同步
提前致谢!
解决方案
这是你想要的吗?
var e = document.getElementById("currentEvent");
function GetSelectedText() {
var selected = e.options[e.selectedIndex];
document.getElementById("selectedEvent").innerHTML = selected.text;
if (typeof(Storage) !== "undefined") {
localStorage.setItem("s_option", selected.text);
localStorage.setItem("s_option_value", selected.value);
}
}
function show_result() {
document.getElementById("selectedEvent").innerHTML = localStorage.getItem("s_option");
document.getElementById("currentEvent").value = localStorage.getItem("s_option_value");
}
window.addEventListener("storage", show_result);
e.addEventListener("change", GetSelectedText);
推荐阅读
- python - 从python字典列表中获取最小大于值
- java - 无法在并发 HashMap 中添加元素 - 为什么?
- concourse - Concourse:读取 git 资源元数据
- azureservicebus - Logic App 总是需要 30 秒才能读取空的服务总线队列
- java - 开始调试多模块 Maven 项目时,Visual Studio Code 的 Java 插件无法加载 Spring Boot 类
- android - 在 Retrofit 2 中解析 3 级嵌套的 Json 对象
- javascript - 如何使用本地文件中的自定义字体使用节点 js 制作 pdf 文件?
- gooddata - Gooddata.UI - 不显示图表,没有格式化的表格
- python - 当某些输出无关紧要时如何训练张量流模型?
- jquery - 单击箭头后滚动页面