jQuery 无法在 Firefox 中加载

jQuery doesn't load in firefox

我有一个简单的 HTML 文件,其中包含 jQuery。在 Safari 中它有效,但在 Firefox 中它不加载。当我使用 $ 时,我在 firefox 中收到以下错误消息:

ReferenceError: $ 未定义

<!doctype html>
<html>
<head>

</head>
<body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js" type='text/javascript' integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>
<script>
    if (window.jQuery) {
        alert("loaded");
    } else {
        alert("not loaded");
    }
</script>
</body>
</html>

我像这样试过你的代码,它有效

<!doctype html>

    <html>
    <head>

    </head>
    <body>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js" ></script>
    <script>


        if (window.jQuery) {
            alert("loaded");
        } else {
            alert("not loaded");
        }
    </script>
    </body>
    </html>

完整性属性值很可能与脚本的哈希值不匹配。 如果您收到任何错误,请检查控制台 window 好吗?

我找到了根本原因。基于 caniuse 站点,safari NOT 实现了此功能,因此您在 safari 上看不到问题。 IE 和 Edge 的情况相同。请看下面:

我今天遇到了同样的问题,Firefox 和 Safari 都无法使用多个功能,我检查并注意到其中一个不在声明范围内:

    jQuery(document).ready(function(){
      //your code
    });

我把函数放回里面,一切正常。因此,请尝试在您的脚本中包含 (document).ready 函数。 看来Chrome是识别和执行jQuery中的"smartest"。