关于DEFER,载入HTML段中如果有脚本,如何运行?

fancuixia fancuixia 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
例如:

<HTML>
<HEAD>
<TITLE> DEFER </TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
var newPage = new Array();
newPage[0] = '<div style="background:silver; width:200px; height:100px; margin:20px;"></div>';
newPage[1] = '<div style="background:blue; width:150px; height:200px; margin:10px;"><SCRIPT LANGUAGE="JavaScript">function doSomething(){;}</SCRIPT><br><a href="#" >Hello</a></div>';
//-->
</SCRIPT>
</HEAD>

<BODY>
Here laod page:<br>
<span id=sp1></span>
<button onclick="sp1.innerHTML=newPage[0];">p1</button><br>
<button onclick="sp1.innerHTML=''; sp1.innerHTML = newPage[1];alert(sp1.outerHTML);">p1</button><br>
</BODY>
</HTML>

此时sp1中已经没有<script>段了,即如果执行doSomething()会报缺少对象。我想可能innerHTML能够将非内嵌的教本过滤掉。

现在我需要在客户端运行过程中动态加载某些内容,比如在一个DIV中, 动态加入不同HTML文件的整个代码,且正常显示(原来是TABLE,现在也是TABLE),但发现原来HTML文件的客户端脚本都不可以运行了! 仔细分析后发现使用innerHTML 或 insertAdjecentHTML都会过滤脚本,使用innerText则根本不能显示效果。

望高手指点!
...全文

相关推荐

浅谈HTML5 defer和async的区别

下面小编就为大家带来一篇浅谈HTML5 defer和async的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

weixin_38514732

浏览器环境下JavaScript脚本加载与执行探析之defer与async特性

defer和async特性相信是很多JavaScript开发者”熟悉而又不熟悉”的两个特性,从字面上来看,二者的功能很好理解,分别是”延迟脚本”和”异步脚本”的作用。然而,以defer为例,一些细节问题可能开发者却并不一定熟悉,比如:有了defer特性的脚本会延迟到什么时候执行;内部脚本和外部脚本是不是都能够支持defer;defer后的脚本除了会延迟执行之外,还有哪些特殊的地方等等。本文结合已有的一些文章以及MDN文档中对两个特性的阐述,对defer和async进行更全面的研究和总结,希望能够帮助开发者更好地掌握这两个特性。 1 引言 在《浏览器环境下JavaScript脚本加载与执行探

weixin_38508497

JS脚本defer的作用示例介绍

代码如下: [removed][removed] 中的defer作用是文档加载完毕了再执行脚本,这样回避免找不到对象的问题—有点问题 &lt;button id=”myButton” onclick=”alert&#40;‘ok’&#41;”&gt;test&lt;/button&gt; [removed] myButton.click(); [removed] [removed] myButton.click(); [removed] &lt;button id=”myButton” onclick=”alert&#40;‘ok’&#41;”&gt;test&lt;/button&gt; &lt;script

weixin_38612568

HTML5 script元素async、defer异步加载使用介绍

异步加载,可以理解为无阻塞并发处理,过去我们使用各种JavaScript技巧来做这种事情,现在WebKit为HTML5实现了SCRIPT标签的async异步属性,感兴趣的朋友可以了解下

weixin_38509504

script标签defer与async详解[可运行源码]

本文深入探讨了script标签中defer与async属性的区别及其实际应用。默认情况下,script标签会阻塞HTML解析,而defer和async属性则通过异步下载脚本解决这一问题。defer属性确保脚本在HTML解析完成后按顺序执行,适合有依赖关系的脚本;async属性则在脚本下载完成后立即执行,适合独立无依赖的脚本。文章通过执行机制、关键特性和代码示例详细对比了两者的差异,并提供了Vue项目中的实际应用场景和常见问题解答,帮助开发者优化页面加载性能,避免执行时机不当导致的错误。

mmm90
评论 4
收藏 已收藏
分享
返回顶部
fancuixia
JavaScript 87,984 成员 224,681 内容