gpt4 book ai didi

javascript - 重新加载窗口时 jQuery 未加载

转载 作者:行者123 更新时间:2023-12-01 02:34:06 24 4
gpt4 key购买 nike

我遇到了一个奇怪的情况,jQuery 没有加载到窗口对象中。我的应用程序是一个电子应用程序。我的启动页面实际上加载了 jQuery。但是,在加载启动页面时,我有一些代码决定是否使用不同的 url 重新加载浏览器窗口。该 url 是应用程序中的另一个 html 页面,它在脚本标记中包含对 jQuery 库的引用。 jQuery 似乎确实在这个新页面中加载,因为我可以打开 DevTools 并在控制台中键入 $,它表明它已加载。但是,在我嵌入页面的 JavaScript 代码中,$ 无法识别。我没有加载任何可能与 jQuery 脚本冲突的其他脚本。 jQuery 脚本是唯一加载的脚本。什么可能阻止 jQuery 附加到窗口对象?仅当我使用 window.location.href 加载新页面时才会发生这种情况。如果我不加载该页面,而只是在启动页面中使用 jQuery,则 jQuery 会附加到窗口对象。

这是我加载 jQuery 的方式:

<head>
<script type="text/javascript" src="../../jquery/jquery-3.2.1.min.js"></script>
</head>

我尝试使用以下方法等待 jQuery 加载:

function defer(method) {
if (window.jQuery) {
method();
} else {
setTimeout(function() { defer(method) }, 50);
}
}

defer(function () {
alert("jQuery is now loaded");
});

但是 window.jQuery 永远不会被设置。

最佳答案

在 Electron 中,jquery 不会作为脚本加载。

使用这个(在你的标题中):

<script>window.$ = window.jQuery = require('jquery');</script>

并使用 npm install --save jquery 将 jQuery 作为包安装

如果这不起作用,请尝试使用

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

//put all of scripts here
<script src="path/to/jquery"></script>

<script>if (window.module) module = window.module;</script>

或者您可以使用:

<script>window.$ = window.jQuery = require('./path/to/jquery');</script>

关于javascript - 重新加载窗口时 jQuery 未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48074750/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com