Javascript 加载功能只有一半时间有效 (Firefox)

Javascript load function only works half of the time (Firefox)

当我使用下面的代码时

<object id="svg" data="assets/mySVG.svg" type="image/svg+xml">

<script>
$(document).ready(function() {
   document.getElementById('svg').addEventListener("load", function() {
      console.log('test');
   });
});
</script>

它只会加载一半的时间。有时我刷新它加载,有时它不加载。一旦 SVG 文档被缓存,它就会加载。这只发生在 firefox 中,在 chrome 中它加载 100% 的时间。

可能是缓存问题,还要记住事件 Load 发生在 DOM 准备就绪之后,并且 SVG 对象可能加载之前因为在缓存中,无论如何您可以尝试在不使用 jQuery 的情况下加载它,正如我在 jQuery ready 事件之前读到的那样需要更长的时间才能开始,因为首先需要加载 jQuery 库,可能还有ready 事件发生时 SVG 已经加载,在 </body>:

之前添加这样的脚本
<script>
(function () {
    "use strict";
    var init();
    init = function(){
        document.getElementById('svg').addEventListener("load", function() {
            console.log('test');
        });
    }
    init();
})();
</script>