jquery在其他javascript文件之前被包含时不加载

时间:2016-12-27 07:06:29

标签: javascript jquery html

<!doctype html>
<html>
<head>
    <meta charset="utf-8">

    <title>Electron Boilerplate</title>

    <link href="stylesheets/main.css" rel="stylesheet" type="text/css">
    <link href="../vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">

    <!-- MetisMenu CSS -->
    <link href="../vendor/metisMenu/metisMenu.min.css" rel="stylesheet">

    <!-- Custom CSS -->
    <link href="../vendor/sb-admin-2.css" rel="stylesheet">

    <!-- Custom Fonts -->
    <link href="../vendor/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css">

</head>
<body>
  <div id="wrapper">
    <nav class="navbar navbar-default navbar-static-top" role="navigation" style="margin-bottom: 0">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
          <span class="sr-only">Toggle navigation</span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </button>
        <a class="navbar-brand" href="index.html">SB Admin v2.0</a>
      </div>
    ...



    </nav>
  </div>
    <script src="../vendor/jquery/jquery.min.js"></script>
    <script src="helpers/context_menu.js"></script>
    <script src="helpers/external_links.js"></script>

    <script src="app.js"></script>
    <script src="../vendor/bootstrap/js/bootstrap.min.js"></script>

    <!-- Metis Menu Plugin JavaScript -->
    <script src="../vendor/metisMenu/metisMenu.min.js"></script>
    <script src="../vendor/sb-admin-2.js"></script>
</body>
</html>

目前,控制台给出了以下三个错误:

  

未捕获的错误:Bootstrap的JavaScript需要jQuery(bootstrap.min.js:16)

     

未捕获的ReferenceError:未定义jQuery(metisMenu.min.js:9)

     

未捕获的ReferenceError:$未定义(sb-admin-2.js:6)

我在网上搜索过,但我找不到符合我问题的解决方案。我尝试将jquery.min.js移动到标题并将jquery的源更改为https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js。这两个选项都不起作用。我想这可能是因为加载了其他javascript文件后jquery被加载了。我该如何解决这个问题?

更新: 这是我的文件夹结构:

enter image description here

供应商有: enter image description here

app.html就在这里:

enter image description here

我尝试在控制台中输入jQuery.fn.jqueryjQuery().jquery。两者都给了我Uncaught ReferenceError: jQuery is not defined(…).所以看起来jQuery根本没有加载。

2 个答案:

答案 0 :(得分:2)

似乎jQuery被加载到电子的孤立范围中。 您可以在所有脚本导入

之前插入此脚本
<script>
if (typeof module === 'object') {
    window.module = module; 
    module = undefined;
}
</script>

这适用于浏览器和电子

答案 1 :(得分:-1)

在“&lt; script src =”../ vendor / jquery / jquery.min.js“&gt;”之后添加以下代码检查Jquery文件路径是否正确。


    <script>
        console.log("typeof $: " + typeof $)
    </script>