您可能熟悉旧的 Jquery 负载回退:
<script>window.jQuery || document.write('<script src="https://example.com/jquery.js"></script>')</script>
但我在这里和那里读到:不要使用document.write,对你的健康有害,它在 Chrome 上不起作用(它对我有用,Chrome 78)。
所以我试图替换它,但我无法找到一个解决方案,在DOM加载被触发之前同步加载新的 js 文件。
最终发生的DOM操作替代方案是浏览器认为DOM已加载并且所有$(document).ready()失败并显示“ $ 未定义”。
function Jqfallback() {
var j = document.createElement('script');
j.src = 'https://example.com/jquery.js';
document.getElementsByTagName('head')[0].appendChild(j);
}
(window.jQuery || Jqfallback() );
无论我把这个脚本或新的 JS 文件放在哪里,在这种情况下,它('head')[0]已经在正文中的所有其他 JS 之前,它会“异步”加载它。
还有其他选择还是我document.write()在 2019 年末继续摇摆不定?
喵喵时光机
Helenr
相关分类