jQuery的不加载,当它是先于其他JavaScript文件

问题描述:

包括
<!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> 

目前控制台使我有以下三个错误:jQuery的不加载,当它是先于其他JavaScript文件

Uncaught Error: Bootstrap's JavaScript requires jQuery (bootstrap.min.js:16)

Uncaught ReferenceError: jQuery is not defined (metisMenu.min.js:9)

Uncaught ReferenceError: $ is not defined (sb-admin-2.js:6)

我搜索网,我无法找到一个适合的解决方案我问题。我尝试将jquery.min.js移动到标题并将jquery的源更改为https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js。这两个选项都不起作用。我认为这可能是因为jquery在加载其他JavaScript文件后正在加载。我怎样才能解决这个问题?

UPDATE: 这是我的文件夹结构:

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没有加载。

+0

看到控制台是否有404错误? – Araz

+0

不,我没有看到任何404错误 – varimax

+0

请确保你没有加jQuery两次 – Araz

好像jQuery被加载到电子隔离范围内。 您可以前插入这个脚本所有脚本进口

<script> 
if (typeof module === 'object') { 
    window.module = module; 
    module = undefined; 
} 
</script> 

这应该浏览器和电子工作

+1

这对我有效。谢谢,我在这里找到了类似的答案:http://stackoverflow.com/questions/32621988/electron-jquery-is-not-defined – varimax

+0

很好。谢谢你的工作...我只是添加了这个befor我的jQuery脚本..它的工作.. –

在“<脚本src =”../ vendor/jquery/jquery.min.js“>”之后添加以下代码,以检查Jquery文件路径是否正确。

 

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

+0

它给了我Uncaught ReferenceError:$没有定义 – varimax

+0

坏主意。不要使用jQuery来查看它是否已被加载。 'console.log(“typeof $:”+ typeof $)'会更好。 – traktor53