You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JavaScript将jQuery导入文档head及$未定义报错问题咨询

报错原因
  • 动态创建的带src属性的script标签加载外部资源是异步行为:你把jQuery的script节点插入文档后,浏览器不会等它下载、解析执行完成,就会立即执行后面插入的自定义脚本,此时jQuery还没挂载到全局window对象上,自然识别不了$符号。
  • 即便调整两个script的插入顺序,异步加载的特性也不会改变,jQuery未加载完成前调用$必然会报错。
解决方法

监听jQuery脚本的load事件,等jQuery加载完成后再执行依赖jQuery的代码即可,修改后的可用代码如下:

function loadJQuery() {
  let jquery = document.createElement('script');
  jquery.src = 'https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js';
  jquery.type = 'text/javascript';
  // 监听jQuery加载完成事件
  jquery.onload = function() {
    // jQuery加载完成后再插入执行依赖代码
    let script = document.createElement('script');
    script.innerHTML = `
      $(document).keydown( function(event) {
        if (event.which == 32) {
          // 阻止空格键默认的滚动页面行为,不需要可以删除
          event.preventDefault();
          alert('hi!ツ');
        }
      });
    `;
    document.head.appendChild(script);
  };
  document.head.appendChild(jquery);
}
loadJQuery();

内容的提问来源于stack exchange,提问作者joeCEB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 16:54:03