我正在使用 HTML 导入,作为在网站上动态注入内容的工具。它有效,完美,有一篇很好的文章 公开了在文件和模板上使用导入。
确实很少有其他文章,但比德尔曼的文章是最广泛的。它涵盖了导入中的脚本。但是,能够呈现导入的内容并能够运行脚本,我无法让它将数据保存在本地存储中。
我可以在导入器文件中从导入的文件运行脚本,就像警报一样。但是不可能捕获我需要存储和存储的数据。如何做到这一点?这是我的代码示例。
我有一个简单的选择,它的 id 是 dim_city。捕获更改值并存储在 localstorage 上的脚本非常简单:
var ie = importDoc.querySelector('#dim_city'); // capture the selector value.
function getData() {
var idc=ie.options[ie.selectedIndex].value;
var dataCi=(idc);
localStorage.setItem("ic", dataCi);
var storedData = localStorage.getItem(dataCi);
mainDoc.body.appendChild(dataCi.cloneNode(true)); // this adds tha captured data to importer file.
}
作为单个文件,它运行良好并将数据存储在 localStorage 上。导入后,它会运行脚本,如警报,但不能存储在 localStorage 上。
显然浏览器支持 HTML 导入。