js动态引入的四种方式

一人公司 CEO × Accio Work:最大能效实战指南 作为一人公司 CEO,你需要同时扮演市场、销售、运营、财务、产品等多个角色。Accio Work 本质上就是你的。 阅读详情

index.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
   <meta content="text/html;charset=utf-8" http-equiv="content-type">
   <title> </title>
	<script src='' id="s1"></script>
   <script src="dynamic.js"></script>
 </head>

 <body>
  
 </body>
</html>


test.js

alert("hello! I am test.js");
var str="1";



dynamic.js

//第一种方式:直接document.write 但这样会把当前的页面全覆写掉
//document.write("<script src='test.js'><\/script>");


//第二种方式:动态改变已有script的src属性
//s1.src="test.js"


//第三种方式:动态创建script元素
/*    var oHead = document.getElementsByTagName('HEAD').item(0);
    var oScript= document.createElement("script");
    oScript.type = "text/javascript";
    oScript.src="test.js";
    oHead.appendChild(oScript);
*/
//其实原理就是利用dom动态的引入一个js到文件中来~就能和原有的js通信了~

//alert(str);


/*以上三种方式都采用异步加载机制,也就是加载过程中,页面会往下走,
如果这样的话会有问题的,如上面的str就访问不到,因为当程序执行alert(str)时,test.js还在加载Ing....

那么第四种就是基于ajax请求的,且是推荐
*/

function GetHttpRequest()
{
    if ( window.XMLHttpRequest ) // Gecko
        return new XMLHttpRequest() ;
    else if ( window.ActiveXObject ) // IE
        return new ActiveXObject("MsXml2.XmlHttp") ;
}


function ajaxPage(sId, url){
    var oXmlHttp = GetHttpRequest() ;
    oXmlHttp.onreadystatechange = function()  
     {
        if (oXmlHttp.readyState == 4)
        {
           includeJS( sId, url, oXmlHttp.responseText );
        }
    }
    oXmlHttp.open('GET', url, false);//同步操作
    oXmlHttp.send(null);
}


function includeJS(sId, fileUrl, source)
{
    if ( ( source != null ) && ( !document.getElementById( sId ) ) ){
        var oHead = document.getElementsByTagName('HEAD').item(0);
        var oScript = document.createElement( "script" );
        oScript.type = "text/javascript";
        oScript.id = sId;
        oScript.text = source;
        oHead.appendChild( oScript );
    }
}

ajaxPage( "scrA", "test.js" );
alert( "主页面动态加载JS脚本。");
alert( "主页面动态加载a.js并取其中的变量:" + str );





uniapp - 微信支付报错 requestPayment:fail:HBuilder mainifest.json中配置的支付appid和生成订单使用的appid不一致,如果是HB调试请在线打包 uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,微信支付,报错,errMsg,requestPayment:fail:HBuildermainifest.json中配置的支付appid和生成订单使用的appid不一致,如果是HB调试请在线打包,http://ask.dcloud.net.cn/article/282,已经都检查了还是报错,如何解决这个问题,还是不行,错误,苹果微信支付报错,安卓app微信支付出错,打包,在线打包也不行,本地打包,支 阅读详情

相关推荐

HAL库移植实战:解决‘HAL_StatusTypeDef‘未定义报错的3个关键步骤

本文针对STM32开发中从标准库向HAL库移植时常见的'HAL_StatusTypeDef'未定义报错,提供了三个关键解决步骤:首先确保正确包含头文件入口,其次检查并配置模块使能宏,最后注意避免与标准库的同名结构体混用。文章通过实战案例解析了HAL库的模块化设计理念,帮助开发者高效解决混合编程中的编译问题。

book8的博客 208

动态加载 JS 文件

动态加载JS文件是一种优化页面加载速度和提高用户体验的重要方式,但也需要注意文件路径、文件大小、兼容性和安全性等问题。开发者可以通过createElement()方法、appendChild()方法、XMLHttpRequest对象和eval()函数等方式来实现动态加载JS文件,具体实现方法可以根据需求和实际情况进行选择和调整。

tyxjolin的专栏 1万+

ROS基础(一)——命令行代码(以小乌龟程序为例)

ROS学习(一)——命令行代码(以小乌龟程序为例)1 基础命令行语句1.1 roscore1.2 rqt_graph(显示系统计算图)1.3 rosnode(显示所有节点相关信息)1.4 rostopic(和话题相关)2 服务类型指令rosservice同时存在两只海龟3 指令记录 1 基础命令行语句 从大二四旋翼无人机编队后就没再接触过ROS了,最近由于科研任务需要重新捡起来,打算系统学一下!学习过程参考古月居老师的视频,有兴趣的同学可以去[BliBli]学习。 学习平台:Ubuntu 18.04 硬件

北理自动化小白 6267

动态引入js

动态引入js的几种方式

weixin_42464273的博客 1334

使用模拟工具Modbus poll 和PLC 通讯

使用模拟工具Modbus poll 和PLC 通讯 简介 Modbus Poll 是一个模拟Modbus 主站的工具。不用在现场调试,在家也能使用,方便快捷的调试验证程序。使用它可以和PLC进行Modbus TCP /RTU 通讯等功能,接下来为大家介绍使用Modbus Poll 和 PLC 进行 Modbus TCP 通讯。 组态PLC PLC作为我们的从站和Modbus Poll 通讯,那我们组态一个PLC。 创建通信DB 创建一个DB块,在数据类型处输入:TCON_IP_V4

weixin_61398412的博客 1万+

基于aarch64分析kernel源码 六:kernel_init进程(1号进程)、kthreadd进程(2号进程)

kernel_init进程(1号进程)、kthreadd进程(2号进程)分析

OnlyLove_的博客 764

实现动态加载JS脚本有4种方法

这里重新温习Document.write()的用法,必须在加载页面的过程中使用,否则将复写整个页面,这里我碰到的问题是,如果用一些异步方法把内容写进页面Body中是不行的,应为IE无法被我们的脚本所阻塞,无法要求加载过程。这三种方法都是异步执行的,也就是说,在加载这些脚本的同时,主页面的脚本继续运行,如果用以上的方法,那下面的代码将得不到预期的效果。alert("主页面动态加载a.js并取其中的变量"+str);alert("主页面动态加载a.js并取其中的变量"+str);......

xiaoweids的博客 3434

arcgis导出自身相交数据

今天接到一个客户需求,一份面文件,里面有好多元素是两两相交甚至是三个相交的,现在要把这些重叠部分提取出来,并且把相交部分的原始要素的名称也保留在字段中,也就是说名称这个会有好多个名称字段,如果两个要素相交那就是前两个名称字段有值,后面的为空,如果是三个要素相交,那么输出的这个要素就是前三个名称字段有值,后面的为空,嗯,这里也不太确定会出现多少个名称字段,这个需要依照数据来定。 这是原始数据,...

miaowumi92的博客 6789

js实现动态添加内容

js事件委托

huihui_999的博客 2675

YOLOv11改进 | 引入SFSConv空间频率选择卷积(含SFSC3k2二次创新),空间频率特征协同作用,检测性能全面提升

本文提出在YOLOv11中引入SFSConv空间频率选择卷积模块,通过显式分离和动态融合空间域与频率域特征,解决传统卷积对多尺度目标检测的局限性。SFSConv包含空间频率分离、动态权重融合和协同特征重建三个核心机制,并进一步创新提出SFSC3k2结构,通过双路频率分支增强特征协同作用。该改进显著提升了YOLOv11在遥感、医学等多尺度复杂场景下的检测性能,实验显示在微小目标检测任务中mAP提升5%-10%。代码实现展示了SFSConv模块的核心逻辑及其在PyTorch中的高效实现。

走向CTO的路上... 768

097、Zephyr RTOS驱动开发实战:传感器驱动(陀螺仪)

I2C速率别设太高:LSM6DSO支持最高400kHz,但实际布线有寄生电容时,400kHz容易出错。工业产品我统一用100kHz,稳定压倒一切。FIFO水印值要计算:假设ODR=6.66kHz,每150us产生一组数据,如果水印设32组,则每4.8ms触发一次中断。这个间隔要大于I2C读取耗时(实测约200us),否则中断堆积。电源纹波敏感:陀螺仪对电源噪声敏感,特别是3.3V供电时。我遇到过因为DC-DC纹波太大,陀螺仪输出噪声从0.1dps飙升到2dps。

m0_50546716的博客 118

HTML5动态加载资源方式,js动态引入的四种方法

本文表述了关于js动态引入四种方式的实例代码。分享给大家供大家参考,具体如下:index.html test.jsalert("hello! I am test.js");var str="1";dynamic.js//第一种方式:直接document.write 但这样会把当前的页面全覆写掉//document.write("");//第二种方式:动态改变已有script的src属性//s1.s...

weixin_35735370的博客 1430

番外篇 | 复现HIC-YOLOv5,助力小目标物体的检测

在本文中提出了一种改进的YOLOv5算法:HIC-YOLOv5,用于小目标检测,具有更好的性能和较低的计算成本。🌈

小哥谈 1130

加载js的 php文件路径,html怎么引用JavaScript?html引入js路径四种方式

html是静态的页面,如果我们想要实现某些动画效果,就要引入一些js,那么,如何在html中引用一些js文件呢,引入js有哪些方式呢,下面我们来总结一下html引入js路径四种方式。一:html怎么引用JavaScript在html中引用一些js特效,我们可以通过四种方式去实现:1.html页面的头部head标签中去引用2.html页面的主体body标签内去引用3.元素事件中去引用4.直接引用js...

weixin_31557179的博客 575

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

盘点JavaScript在HTML中引用的4种方法

引入外部JS文件,说白了就是把JavaScript程序存放在一个后缀名为.js的文件中,然后使用script标签来引用。在元素事件中引入JS,就是指在元素的某一个属性中直接编写JavaScript程序或调用JavaScript函数,这个属性指的是元素的“事件属性”。在body标签内引入JavaScript跟在head标签引入JavaScript语法格式类似,在此不再重复讲解。在页中引入JS,指的就是在标签内编写JavaScript。(3)元素事件中引入(标签属性中引入);

hdxx2022的博客 2212

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

JavaScript 基础概念

1 JavaScript 概念 1.1 什么是JavaScript(简称“JS”)? 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。 【脚本语言、基于对象、动态交互、跨平台性】 1.2 语言组成 ①ECMAScript,描述了该语言的语法和基本对象。 ②文档对象模型(DOM),描述处理网页内容的方法和接口。 ③浏览器对象模型(BOM),描述与浏览器进行交互的方法和接口。 1. 3 JavaScript的标准是? JavaScript已经被Netscape公司提交给ECMA制定为标准,称之为E

weixin_52682120的博客 3412

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

JavaScript手录01-概念篇

摘要 计算机语言是人机交互的核心工具,JavaScript作为浏览器唯一原生语言,在网页开发中占据关键地位。本文系统阐述了计算机语言基础概念、软硬件区别及程序本质,重点介绍了JavaScript的特性、发展历程和四种引入方式(行内事件、内部脚本、外部引入和动态加载),并对比了各方式的适用场景。同时提供了常见编程语言应用领域表,以及脚本加载顺序控制技巧(defer/async属性),为开发者提供了全面的技术参考。

qq_45925548的博客 655

html动态加载js方法,动态引入js四种方法总结

这次给大家带来动态引入js四种方法总结,动态引入js四种方法的注意事项有哪些,下面就是实战案例,一起来看一下。index.html test.jsalert("hello! I am test.js");var str="1";dynamic.js//第一种方式:直接document.write 但这样会把当前的页面全覆写掉//document.write("");//第二种方式:动态改变已有sc...

weixin_39641697的博客 6132

vue引入组件的方式(全方式)

这篇文章主要总结,vue引入组件,多种方式,局部(页面),全局,异步,动态加载...

qq_53701739的博客 5506

JavaScript入门1

JavaScript是一种高级的、解释型的编程语言,主要用于网页开发,使网页具有交互性。● 客户端脚本语言:主要在浏览器中执行。无需编译:代码以纯文本形式保存(.js),运行时由解释器逐行解析执行,而不需要像 C++ 那样先编译成二进制文件。● 多范式语言:支持面向对象、函数式编程风格● 跨平台:几乎所有现代浏览器都支持JavaScript标识符 是用于命名变量、函数、类、属性等的字符序列。// "userName" 是标识符。

2604_96662871的博客 173

在vue中引入多个script标签

注意:vue是单文件,只能直接引入一个script标签,其他的需要去创建。 1.可以在index.html中引入,在HTML文件中可以引入多个script标签。 <head> <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=lOOL1od96eckPqskoI...

qq_38918953的博客 2万+

html中引入css的四种方法

在html中,引入css的方法主要有行内式、内嵌式、导入式和链接式4种。 1.行内式:即在标记的style属性中设定css样式,这种方式本质上没体现出css的优势,因此不推荐使用。 2.嵌入式:在对页面中各种元素的设置集中写在和之间的,对于单个页面来说,这种方式很方便。 3

责任-激情-高效-共享 2198

怎么把css引入到php,CSS的四种引入方式

1.标签内的CSS。2.网页内的CSS。3.link引用的CSS。4.import引用的CSS。下面是源代码:引入CSS的四种方式/*h2{ color:white;background-color:blue;}*//*要想使网页内的CSS生效,必须注释下一行代码*/@import "import.css";标签内的CSS网页内的CSSlink引用的CSS文件import引用的CSS文件link引...

weixin_39810196的博客 749
上一篇: 爱记录-解决EXTJS Ajax请求时无法进入success回调函数,而是进入failure
下一篇: jquery mobile listview实例
最美远程
博客等级 码龄14年 26粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值