Javascript 在js条件下加载脚本的最佳方式是什么
我有代码,正在寻找在代码中加载脚本的最佳实践 这就是我之前手动添加的方式-Javascript 在js条件下加载脚本的最佳方式是什么,javascript,Javascript,我有代码,正在寻找在代码中加载脚本的最佳实践 这就是我之前手动添加的方式- 如果条件为true,我需要在下面的脚本中加载 我发现document.write()不是最佳做法,有什么建议吗 <script type="text/javascript"> var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); var element = document.getElementById('t
如果条件为true,我需要在下面的脚本中加载
我发现document.write()
不是最佳做法,有什么建议吗
<script type="text/javascript">
var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
var element = document.getElementById('text');
if (isMobile) {
} else {
console.log('error');
}
</script>
var isMobile=/iPhone | iPad | iPod | Android/i.test(navigator.userAgent);
var元素=document.getElementById('text');
if(isMobile){
}否则{
console.log('error');
}
因为这是一个异步操作,所以您应该这样做:
function loadScript(src) {
return new Promise(function(resolve, reject) {
let script = document.createElement('script');
script.src = src;
script.onload = () => resolve(script);
script.onerror = () => reject(new Error(`Script load error for ${src}`));
document.head.append(script);
});
}
您不应该使用用户代理来区分浏览器或检测站点是否加载在移动设备上,这可能会导致对屏幕分辨率和输入设备的错误假设。你应该改用特征检测。这个答案很好。但你应该避免回答一个与已经投票率很高的问题重复的问题。相反,您应该将问题标记为重复问题,或者编写一条链接到该重复问题的注释。如果副本缺少你在答案中所写的技巧,你应该将你的答案添加到副本中。对不起,我找不到副本question@t.niese我在我的手机上,我不知道如何从stack exchange应用程序中执行此操作,所以我只回答了这个问题