html动态加载js文件

一、使用jQuery

1.jQuery.getScript(url, fn).done(fn)

getScript函数可以请求js文件加载本质ajax请求

2.jQuery.ajax

jQuery.ajax({
    url: "url",
    dataType: "script",
    async: false,
    success: function(){
        
    }
});

3.问题

在实际开发发现此为异步请求,实际开发中虽然加载js文件但是使用无法访问到,并且

jQuery.ajaxSettings.async = false

 jQuery.ajaxSetup({
 	async: false
 });

全局设置无效

解决办法:

1.不在$(function(){})中加载js文件,将代码直接写进 script标签(会优先ready函数执行,但是需要在jQuery文件加载后,可以直接将此script标签放到body标签最后

2.直接在done或success中完成逻辑代码

二、 javascript动态加载js文件

1.document.write

document.write("&lt;script type='text/javasript' src=''&gt;</script>");

2.创建Dom节点

const script = document.createElement("script");
script.setAttribute("type", "text/javasript");
script.setAttribute("src", "url");
document.getElementsByTagName("body")[0].appendChild(script);

核心思想:创建script标签,不在$(function(){})中加载js文件,将代码直接写进 script标签(会优先ready函数执行,但是需要在jQuery文件加载后,可以直接将此script标签放到body标签最后

原文地址:https://blog.csdn.net/weixin_44178072/article/details/130647878

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_25848.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注