gpt4 book ai didi

javascript - 有什么方法可以做有条件的,包括在 javascript 中?

转载 作者:行者123 更新时间:2023-11-30 18:40:50 26 4
gpt4 key购买 nike

我们正在开发一个包含大量 portlet 的门户(页面/门户中的独立应用程序)。每个 portlet 都必须是独立的:它们必须能够在门户内的独立页面上运行。

我们一直被要求不要将 的 javascript 文件添加到门户基页(调用所有内容的页面)。它还带有dojo(但没有人使用它)。

有什么方法可以加载 javascript 文件(包括 jQuery aka,这不是解决方案)如果它们尚未加载? 答案可以使用 dojo

现在我们想到

if (!window.jQuery) {            
document.write('<script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript"><' + '/script>');
}
if (!window.jQuery.ui) {
document.write('<script src="/Scripts/jquery-ui-1.8.11.min.js" type="text/javascript"></scr' + 'ipt>');
}
[...] other includes

这个问题是当 jQuery.ui 测试完成时 jquery 没有加载,因此抛出错误并且没有加载第二个文件。

编辑

重写问题:问题是我们可能有 4 个 portlet,每个 portlet 都需要 jQuery + jQuery-ui + 不同 其他插件/文件。因此,他们需要所有 包含代码以独立加载 所有这些文件。但是我们也不想加载 jQuery 和 jQuery-ui 4 次

最佳答案

这个问题的解决方案似乎是使用单独的脚本 block 。显然 document.write 不会影响脚本的加载,直到脚本 block 关闭。也就是说,试试这个:

<script>
if (!window.jQuery) {
document.write('<script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript"><' + '/script>');
}
</script>
<script>
if (!window.jQuery.ui) {
document.write('<script src="/Scripts/jquery-ui-1.8.11.min.js" type="text/javascript"></scr' + 'ipt>');
}
</script>

适合我。在 IE 和 Firefox 中测试。

关于javascript - 有什么方法可以做有条件的,包括在 javascript 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6903215/

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