我使用HTML导入作为一种在网站上动态注入内容的工具。它工作正常,完美,有一个很好的article
公开了在文件和模板上使用导入。

确实,其他文章很少,但是Bidelman的文章最多。它涵盖了导入脚本。但是,由于能够呈现导入的内容并能够运行脚本,因此我无法使其保存本地存储中的数据。

我可以从导入文件中的导入文件中运行脚本,就像警报一样。但是不可能捕获我需要存储和存储的数据。如何做到这一点?这是我的代码示例。

我有一个简单的选择,其ID为dim_city。捕获变更价值并存储在本地存储中的脚本非常简单:

 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导入。

最佳答案

根据definition,导入没有browsing context,因此没有localStorage

http://w3c.github.io/webcomponents/spec/imports/#terminology

08-25 11:38
查看更多