how to add a js condition
您好!我想在JS中编写一个导致添加外部JS的条件。例如,如果条件是x>2并且它是真的,那么我希望它加载一个不同的外部JS文件,但是如果它是假的,那么加载另一个JS文件。我怎么写?谢谢
- 你真的需要在客户方做吗?这似乎更像是服务器生成问题?"因为我不确定JS文件是否包含,但上一次我不得不这样做时,我使用了jquery。
- 您好@maskime,这次我必须在客户端进行,我知道在服务器端进行比较好。jquery也有帮助。
- 如果您想加载一个模块而不刷新整个页面,并且不使用iframes,那么客户端是有意义的。
1 2 3 4 5 6 7 8
| var fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript")
if (x > 2){
fileref.setAttribute("src","/js/file1.js")
}else{
fileref.setAttribute("src","/js/file2.js")
}
document.body.appendChild(fileref); |
- 嗨,此代码不显示错误,但未加载文件。
- @过氧化物:这是因为您使用document.createElement()创建了一个元素,但实际上您没有将它放到DOM中。因此,我们倾向于给你一些代码片段来回答问题中提到的核心问题,而不是给你一个完整的概要。阅读我答案中的链接"了解更多关于主题的内容",了解一般问题以及如何处理。
- 请注意,如果您在文档分析时执行此操作,则当主体尚未完成加载时,尝试将元素添加到EDOCX1[0]的末尾会混淆浏览器(尤其是可能会给您带来可怕的"操作中止")。对于旧的解析时间加载,总是会有混乱的document.write,或者简单地安排在文档准备就绪时发生这种情况。
- (而且,你不必使用有点多话的setAttribute。fileref.type=和fileref.src=都很好。)
你可以写:
1 2
| if(conditon)
$('body').append("<script src='whatever'><" +"/script>"); |
- 嗨,这显示一条错误消息。$未定义
- @过氧化物:用户239427正在讨论jquery。参见www.jquery.com。我担心你得帮自己一点忙,然后读一点关于这个的资料。在语言本身中没有内置JS导入的本机构造。