首页 web前端 js教程 js加载之使用DOM方法动态加载Javascript文件_javascript技巧

js加载之使用DOM方法动态加载Javascript文件_javascript技巧

May 16, 2016 pm 05:16 PM
动态加载

传统上,加载Javascript文件都是使用<script>标签。 <BR>就像下面这样: <BR><script type="text/javascript" src="example.js"></script>
js加载之使用DOM方法动态加载Javascript文件_javascript技巧 
<script>标签很方便,只要加入网页,浏览器就会读取并运行。但是,它存在一些严重的缺陷。 <BR>  (1)严格的读取顺序。由于浏览器按照<script>在网页中出现的顺序,读取Javascript文件,然后立即运行,导致在多个文件互相依赖的情况下,依赖性最小的文件必须放在最前面,依赖性最大的文件必须放在最后面,否则代码会报错。 <BR>  (2)性能问题。浏览器采用"同步模式"加载<script>标签,也就是说,页面会"堵塞"(blocking),等待javascript文件加载完成,然后再运行后面的HTML代码。当存在多个<script>标签时,浏览器无法同时读取,必须读取完一个再去读取另一个,造成读取时间大大延长,页面响应缓慢。 <BR>为了解决这些问题,可以使用DOM方法,动态加载Javascript文件。 <BR><div class="codetitle"><span><a style="max-width:90%" data="78858" class="copybut" id="copybut78858" onclick="doCopy('code78858')"><U>复制代码 代码如下:<div class="codebody" id="code78858"> <BR>  function loadScript(url){ <BR>    var script = document.createElement("script"); <BR>    script.type = "text/javascript"; <BR>    script.src = url; <BR>    document.body.appendChild(script); <BR>  } <BR> <BR>这样做的原理是,浏览器即时创造出一个<script>标签,然后"异步"读取Javascript文件。这样不会造成页面堵塞,但会造成另外一个问题:这样加载的Javascript文件,不在原始的DOM结构之中,因此在DOM-ready(DOMContentLoaded)事件和window.onload事件中指定的回调函数对它无效。 </script>

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
2 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Python实现无头浏览器采集应用的页面动态加载与异步请求处理功能解析 Python实现无头浏览器采集应用的页面动态加载与异步请求处理功能解析 Aug 08, 2023 am 10:16 AM

Python实现无头浏览器采集应用的页面动态加载与异步请求处理功能解析在网络爬虫中,有时候需要采集使用了动态加载或者异步请求的页面内容。传统的爬虫工具对于这类页面的处理存在一定的局限性,无法准确获取到页面上通过JavaScript生成的内容。而使用无头浏览器则可以解决这个问题。本文将介绍如何使用Python实现无头浏览器来采集使用动态加载与异步请求的页面内容

Vue中如何处理组件的动态加载和切换 Vue中如何处理组件的动态加载和切换 Oct 15, 2023 pm 04:34 PM

Vue中处理组件的动态加载和切换Vue是一个流行的JavaScript框架,它提供了各种灵活的功能来处理组件的动态加载和切换。在本文中,我们将讨论一些Vue中处理组件动态加载和切换的方法,并提供具体的代码示例。动态加载组件是指根据需要在运行时动态加载组件。这样可以提高应用程序的性能和加载速度,因为只有当需要时才会加载相关的组件。Vue提供了async和awa

揭秘Golang热更新原理:动态加载与重载的内幕讲解 揭秘Golang热更新原理:动态加载与重载的内幕讲解 Jan 20, 2024 am 10:09 AM

Golang热更新原理探究:动态加载与重载的奥秘引言:在软件开发领域,程序员们经常希望能够在不重启应用的情况下进行代码修改和更新。这样的需求对于开发效率和系统运行的可靠性都具有重要意义。而Golang作为一门现代化的编程语言,为开发者提供了许多便捷的机制来实现热更新。本文将深入探讨Golang热更新的原理,特别是动态加载和重载的奥秘,并将结合具体的代码示例进

如何使用Vue和Element-UI创建动态加载数据的表格 如何使用Vue和Element-UI创建动态加载数据的表格 Jul 21, 2023 pm 11:49 PM

如何使用Vue和Element-UI创建动态加载数据的表格在现代的Web开发中,数据表格是常见的界面组件之一。Vue.js是当下非常流行的前端框架,而Element-UI是基于Vue.js开发的一套组件库,提供了丰富的UI组件供我们使用。本文将介绍如何使用Vue和Element-UI来创建一个可以动态加载数据的表格,并且给出相应的代码示例。首先,我们需要安装

解决Vue报错:无法正确使用Vue Router根据路由参数动态加载组件 解决Vue报错:无法正确使用Vue Router根据路由参数动态加载组件 Aug 20, 2023 am 08:09 AM

解决Vue报错:无法正确使用VueRouter根据路由参数动态加载组件在使用VueRouter进行路由跳转的过程中,有时我们需要根据路由参数动态加载组件。但是,有些情况下,我们可能会遇到一个常见的错误:无法正确使用VueRouter根据路由参数动态加载组件。本文将介绍如何解决这个报错,并提供代码示例。首先,我们需要明确一点:VueRouter可以通过

phpSpider实用技巧:如何处理网页内容的动态加载问题? phpSpider实用技巧:如何处理网页内容的动态加载问题? Jul 22, 2023 am 08:33 AM

phpSpider实用技巧:如何处理网页内容的动态加载问题?在爬取网页数据时,经常会遇到动态加载的内容无法直接通过爬虫获取的问题。这些动态加载的内容可以是通过AJAX请求获取的数据、通过JavaScript进行渲染的DOM元素等。为了解决这个问题,本文将介绍一些在使用phpSpider时处理网页动态加载问题的实用技巧。一、使用网络调试工具查找动态加载的URL

C#中如何使用反射和动态加载程序集 C#中如何使用反射和动态加载程序集 Oct 08, 2023 pm 12:12 PM

C#中如何使用反射和动态加载程序集引言:在C#中,反射(Reflection)是一种强大的机制,它允许我们在运行时获取和操作程序的元数据,包括类型信息、成员信息等。而动态加载程序集则是通过反射来实现的一种常见应用,并且在一些特定场景中非常有用。本文将详细介绍C#中如何使用反射和动态加载程序集,并提供具体的代码示例。反射的基本概念反射是C#语言中的一项重要功能

Java实现多级联动表单的动态加载与更新 Java实现多级联动表单的动态加载与更新 Aug 07, 2023 pm 05:13 PM

Java实现多级联动表单的动态加载与更新背景:在开发Web应用时,经常会遇到需要实现多级联动表单的场景,例如省市县三级联动的选择。在这样的表单中,当用户选择上级选项后,下级选项会根据用户的选择自动加载并更新。这种功能能够有效减少用户的输入工作量,提高用户体验。本文将使用Java语言演示如何通过动态加载和更新来实现多级联动表单。实现思路:定义数据模型:首先需要

See all articles