动态脚本指的是在页面加载时不存在,但将来的某一时刻通过修改该DOM动态添加的脚本。和操作HTML元素一样,创建动态脚本也有两种方式:插入外部文件和直接插入JavaScript代码。
动态加载外的外部JavaScript文件能够立即运行,比如下面的<script>元素。
<script type="text/javascript" src="client.js"></script>
而创建这个节点的DOM代码如下所示:
var script = document.createElement("script"); script.type = "text/javascript"; script.src = "client.js"; document.body.appendChild(script);
显然这里的DOM如实的反映了相应的HTML代码。不过执行最后一行代码把<script>元素添加到页面之前,是不会下载外部文件的。也可以把这个元素添加到<head>元素中效果相同。整个过程可以使用下面的函数来封装:
function loadscript(url) { var script = document.createElement("script"); var script.type = "text/javacript"; script.src = url; document.body.appendChild(script); }
然后,就可以通过调用这个函数来加载外部的JavaScript文件了:
loadScript("client.js");
加载完成后,就可以在页面中的其它地方使用这个脚本了。
另一种指定JavaScript代码的方式是行内方式,如下面的例子所示:
<script type="text/javascript"> function sayHi() { alert("hi"); } </script>
从逻辑上讲,下面的DOM代码是有效的:
var script = document.createElement("script"); script.type = "text/javascript"; script.appendChild(document.createTextNode("function sayHi() {alert('hi');}")); document.body.appendChild(script);
在Firefox、Safari、Chrome和Opera中,这些DOM代码可以正常运行。但在IE中,则会导致错误。IE将<script>视为一个特殊的元素,不允许DOM访问其子节点。不过,可以使用<script>元素的text属性来指定JavaScript代码,想下面的例子这样:
var script = document.creatElement("script"); script.type = "text/javascript"; script.text = "function sayHi() {alert('hi');}"; document.body.appendChild(script);
经过修改之后的代码可以在IE、Firefox、Opera和Safari3.0中运行。Safari3.0之前的版本虽然不能正确的支持text属性,但却允许使用文本节点技术来指定代码。如果需要兼容早期版本的Safari,可以使用下列代码:
var script = document.createElement("script"); script.type = "type/javascript"; var code = "function sayHi() {alert('hi');}"; try { script.appendChild(document.createTextNode(code)); } catch (ex) { script.text = code; } document.body.appendChild(script)
这里首先尝试标准的DOM文本节点方法,因为除了IE(在IE中会导致抛出错误),所有的浏览器都支持之中方式。如果这行代码抛出了错误,那么说明是IE,于是就必须使用text属性了,整个过程可以用以下函数来表示:
function loadScriptString(code) { var script = document.createElement("script"); script.type = "text/javascript"; try { script.appendChild(document.createTextNode(code)); } catch (ex) { script.text = code; } document.body.appendChild(script); } loadScriptString("function sayHi() {alert('hi');}");
转自:http://www.w3cmm.com/dom/insert-javascript.html
相关推荐
在JavaScript编程中,动态插入脚本是一种常见的技术,用于在页面加载后或者根据某些条件按需加载外部的JavaScript文件。这种技术在处理大型应用、优化页面性能或实现异步加载时非常有用。本文将详细介绍如何让动态...
JavaScript过滤危险脚本是Web开发中的重要安全措施,主要用于防止跨站脚本攻击(XSS,Cross-Site Scripting)。XSS攻击允许攻击者在用户的浏览器中注入恶意脚本,可能导致敏感数据泄露、用户会话劫持等严重后果。...
JavaScript是一种广泛应用于网页和网络应用开发的编程语言,它允许开发者在用户浏览器上直接执行代码,为用户提供动态交互体验。本项目"基于JavaScript脚本开发的网页计算器"旨在实现一个基本的网页计算器,提供与...
在深入理解JavaScript动态插入技术的探讨中,我们首先关注到的是动态插入技术的核心概念,即如何使用JavaScript将HTML内容动态地添加到网页中。这类技术允许开发者在不重新加载页面的情况下,修改页面的结构和内容。...
js 动态插入脚本也有两种方式:插入 JavaScript 代码和插入外部文件。 一、直接插入 javascript 代码 [removed] function sayHi() { alert("hi"); } [removed] 从逻辑上讲,下面的 DOM 代码是有效的: ...
JSP中使用JavaScript动态插入删除输入框实现代码 JSP(Java Server Pages)是一种基于Java技术的服务器端脚本语言,主要用于生成动态网页内容。JavaScript则是一种客户端脚本语言,主要用于实现网页的交互功能。在...
在这个压缩包中,可能包含的代码示例会演示如何使用Java来处理Office文档,如创建、读取或更新文件内容,以及如何集成和执行动态脚本,例如用JavaScript实现特定的业务逻辑。学习这些示例可以帮助开发者提高在实际...
`<script>`标签是将JavaScript代码插入HTML文档的主要方式。它可以出现在文档的任何位置,但通常位于`<head>`或`<body>`标签内。例如: ```html <script language="JavaScript"> document.write("Hello"); ``` ...
JavaScript是一种广泛应用于网页和网络应用开发的脚本语言,它主要负责处理客户端的交互和数据管理。在实际项目中,为了提高页面加载速度和优化用户体验,我们常常需要按需加载JavaScript文件,而不是一次性加载所有...
这个例子很好的演示了IntraWeb如何插入javaScript. 用一个时钟显示一个会话的到期秒数。 setInterval是 JavaScript 中的一个全局函数,用于重复调用一个函数或执行一个代码片段,每隔指定的周期(以毫秒为单位)。...
JavaScript是一种轻量级的...总之,JavaScript作为客户端脚本语言,极大地丰富了网页的交互性和动态效果。通过理解其基础语法、使用内置对象以及正确地插入和引用脚本,开发者可以创建出功能强大且用户友好的网页应用。
JavaScript插入样式的方法主要分为两种:一种是通过创建`<style>`标签动态插入内联样式,另一种是通过创建`<link>`标签引入外部样式文件。这两种方法在不同的场景下各有优势,下面将详细介绍。 ### 一、JavaScript...
JavaScript是一种广泛应用于Web开发的脚本语言,主要在客户端运行,用于增强网页的交互性和动态性。本课程的目的是帮助学习者理解客户端编程的基本思路,掌握Web开发的编程思想,并能熟练运用JavaScript来编写和控制...
JavaScript脚本调试是Web开发中的重要环节,它帮助开发者定位并修复代码中的错误,提高程序的稳定性和用户体验。本文将详细介绍使用MSScriptControl微软脚本控件进行JavaScript调试的方法和技巧。 MSScriptControl...
这个“winform 服务器端插入脚本实现跳转源码”很可能包含了一种方法,通过在服务器端执行脚本来控制WinForm客户端的应用程序行为,特别是实现页面或窗口之间的跳转。下面我们将深入探讨WinForm和服务器端脚本交互的...
《传智播客_张孝祥_JavaScript6_脚本编程》是针对JavaScript ES6(ECMAScript 2015)版本的一门课程,由资深讲师张孝祥讲解。JavaScript,作为互联网上最广泛使用的脚本语言,是前端开发的基石。随着ES6的发布,它...
JavaScript,简称JS,是一种广泛应用于Web开发的轻量级编程语言,主要负责客户端的动态交互。作为网页和浏览器之间的桥梁,它使得网页可以实现丰富的用户体验和动态功能。本压缩包"JavaScript脚本精华"汇集了大量JS...
在JavaScript中,动态添加脚本是一种常见的编程技巧,它允许我们在网页加载后或者根据需要时按需加载外部JavaScript文件。这种技术通常用于延迟加载、模块化开发或优化页面性能。回调函数是JavaScript中的核心概念,...
在网页开发中,有时我们需要在页面加载过程中动态插入JavaScript脚本,这通常是为了实现异步加载、延迟加载或根据用户行为动态引入特定功能。本文将详细介绍两种常见的动态插入JavaScript脚本的方法,以及如何确保...
总结来说,引入JavaScript到HTML文档是为了实现动态交互,可以通过内联、内部脚本和外部脚本三种方式实现。为了保持代码组织和提高性能,推荐使用外部脚本,并利用`async`和`defer`属性。在实际项目中,还要考虑...