javascript - Uncaught ReferenceError : jQuery is not defined even working on console

标签 javascript jquery

我需要在 js 文件中包含 jQuery,因为它将作为外部脚本加载。

这是我的代码:

function addjQuery() {
  if (!window.jQuery) {
    var jq = document.createElement("script");
    jq.type = "text/javascript";
    jq.src = "https://code.jquery.com/jquery-3.2.1.min.js";
    document.getElementsByTagName("head")[0].appendChild(jq);
    console.log("Added jQuery!");
  } else {
    console.log("jQuery already exists.")
  }
}
addjQuery();

jQuery(function($) {
  $(document).ready(function() {
  });
});

但是出现错误: Uncaught ReferenceError :jQuery 未定义

即使我在 Chrome 开发工具的控制台上运行“jQuery”或“$”,它也能正常工作。

有什么问题吗?

最佳答案

jQuery() 函数在从脚本标记加载 jQuery 之前触发 - 您可以添加一个 onload 事件处理程序以在脚本下载完成时触发它:

function addjQuery() {
  if (!window.jQuery) {
    var jq = document.createElement("script");
    jq.type = "text/javascript";
    jq.src = "https://code.jquery.com/jquery-3.2.1.min.js";
    document.getElementsByTagName("head")[0].appendChild(jq);
    jq.onload = initjQuery;
    console.log("jQuery is loaded!");
  } else {
    console.log("jQuery already exists.")
  }
}

function initjQuery () {
  jQuery(function($) {
    $(document).ready(function() { });
  });
}

addjQuery();

关于javascript - Uncaught ReferenceError : jQuery is not defined even working on console,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43310984/

相关文章:

javascript - 是否可以使用 PHP 表单传递 html 元素属性?

javascript - 将 .trim() 与 jquery 验证插件一起使用

javascript - 如何在 d3.layout.pack 图中使根节点圆居中?

javascript - 网站有哪些好的 JavaScript/AJAX 界面模式?

javascript - js jquery 原型(prototype)函数与嵌套函数

javascript - 在 JQuery 中检查条件时 Bootstrap 模态框不显示

javascript - 如何将滚动条添加到我的动态表?

javascript - sapui5 sap.m.table 如何在单击添加行按钮时将输入添加为列

javascript - 无法跨域获取格式错误的 JSON

javascript - 根据屏幕的宽度更改脚本中的图形