使用Polymer通过HTML Imports包含jQuery不能在Safari和Firefox中使用

我试图通过HTML Imports在主页面中包含jQuery,但它只适用于Chrome。 Safari和Firefox都在主页面的JavaScript代码的第一行上抛出了“ReferenceError:$ is not defined”消息。 似乎页面上的JavaScript代码是在Safari或Firefox中加载jQuery对象之前执行的。 我使用的是最新版本的Polymer(0.4)和jQuery(2.1.1)。 以下是一个最小的例子:

jquery.html

 

main.html中

    Import jQuery      $(document).ready(function() { console.log("Hello World!"); });    

我错过了一些明显的东西吗? 谢谢!

Safari和Firefox今天都不支持HTMLImports。 而是使用Ajax请求的platform.js polyfill。

如果没有本机浏览器支持,则无法使标记等到导入完成加载。 因此,要支持HTMLImportsLoaded您必须等到HTMLImportsLoaded事件触发(或将所有依赖代码放在导入后面)。

所以,要么:

    Import jQuery        

要么

code.html

  

main.html中

    Import jQuery