`

javascript异步加载几种方式总结

阅读更多
评价一个网站性能是否高效,除了后端程序的优化,前端性能也不能忽略,看了一些javascript异步加载资源的方式(基于jquery),贴出来给大家作为参考
jquery提供了异步加载信息的全局函数
1.$.getScript(URL,CALLBACK)
  这个方法提供了异步加载script资源的方式,对于一些web网页内容比较多,需要按需加载,提供了很大的帮助,jquery1.2之后的这个方法可以跨域访问,看代码它是通过动态创建script,在加载成功后删除script节点,如何使用:
$.getScript("/js/user.js");

js/user.js代码
[
    var data = {
        "name": "a",
        "sex": "男",
        "email": "a@163.com"
    },
    {
        "name": "b",
        "sex": "女",
        "email": "b@163.com"
    }
var strHTML = "";
                $.each(data, function(index,entry) { //遍历获取的数据
                    strHTML += "<p>编号:" + index + "<br>";
                    strHTML += "姓名:" + entry["name"] + "<br>";
                    strHTML += "性别:" + entry["sex"] + "<br>";
                    strHTML += "邮箱:" + entry["email"] + "</p><hr>";
                })
                $("#mydata").html(strHTML);
]

同其它全局函数相同,getscript()有一个回调函数,该函数在函数执行完成后返回,在jquery1.4.1 中这个方法只会加载一遍url,jquery1.7.1会加载多遍
2.$.getJson()提供访问同一个域中json数据
$("#ajaxLoadJson").click(function(){
            $.getJSON("js/user.json", function(data) {
                $("#divTip").empty(); //先清空标记中的内容
                var strHTML = ""; //初始化保存内容变量
                $.each(data, function(InfoIndex, Info) { //遍历获取的数据
                    strHTML += "姓名:" + Info["name"] + "<br>";
                    strHTML += "性别:" + Info["sex"] + "<br>";
                })
                $("#divTip").html(strHTML); //显示处理后的数据
            })
        });

对应的user.json
[
    {
        "name": "a",
        "sex": "男",
        "email": "a@163.com"
    },
    {
        "name": "b",
        "sex": "女",
        "email": "b@163.com"
    }
]

URL表示请求的地址,data表示请求的参数,可选参数回调函数中执行操作
3.$("#div").load(URL selecter)该方法提供了异步获取html数据的方式,这个方法也不能跨域访问,在url后面可以指定异步请求的网页的哪些部分被加载到该div中,例子
$("#ajaxLoadhtml").click(function() { //按钮点击事件
            $("#ajax").load("index.jsp h3"); //load()方法加载数据
        })

index.jsp代码
<html>
<head>
</head>
<body>
<h2>Hello World!</h2>
<h3>你好</h3>
</body>
</html>

这几种异步加载在一定程度上可以减少页面等待的时间,给用户提供更好的体验
分享到:
评论

相关推荐

    使用jQuery异步加载 JavaScript脚本解决方案

    JavaScript 加载器在 Web 开发... 实现方法 jQuery 内置有 getScript 方法来加载一个脚本,处理返回的结果可以有几种方法来实现。最基本的用法 jQuery.getScript 看起来像这样: 代码如下: jQuery.getScript(“/path/t

    jQuery Ajax 异步加载显示等待效果代码分享

    AJAX 全称 Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。它并非一种新的技术,而是以下几种原有技术的结合体。接下来通过本文给大家介绍jQuery Ajax 异步加载显示等待效果,需要的朋友一起学习吧

    让浏览器非阻塞加载javascript的几种方法小结

    浏览器为了确保正确执行脚本和呈现布局在浏览器加载和执行完成它之前会完全阻塞页面...一 使用XMLHttpRequest对象异步方式加载外部脚本。  这种方式好处是触发较少的浏览器忙指示器,能够被所有现代浏览器的所支持

    JS异步处理的进化史深入讲解

    前言 javascript是一门单线程的语言,也就是说一次只能完成一件任务,如果有多个任务,就需要排队进行处理。...目前,在javascript异步处理中,有以下几种方式: callback 回调函数是最早解决异步编

    node-verifier-schema:异步请求正文验证程序。 javascript值JSON验证引擎。 异步JSON Api验证

    几种模式对象的构建类型。 内置的模式注册。 您可以使用架构别名。 不对验证器施加限制。 您可以使用实现schema.validator接口的任何框架(或其包装器)(这很容易)。 正确嵌套模式和字段。 您可以将shema构造函数...

    JavaScript_JQuery_CSS_DIV漂亮的实例

    38. jquery异步加载图片的插件jqGalScroll下载 39. jquery微型相册插件Micro Image Gallery下载 40. jQuery把图片放大及变亮特效插件下载 41. jquery拖动滚动条控制图片滚动及图片放大特效的示例 42. jquery旋转...

    fu-component:基金UI的Templete开发人员

    一起看看 JavaScript 的几种模块化方案 前端周刊 - 第13期 - SAFS Fund FE - Dengdeng 早期,我们在写 JavaScript 时代码量少,可能几个function就能够解决问题,但是当页面逻辑较为复杂的时候,我们就不得不引入 ...

    表单的验证

    基于XML的异步JavaScript,简称AJAX,是当前Web创新(称为Web2.0)中的一个王冠。感谢组成AJAX的各种技术,Web应用的交互如Flickr, Backpack和Google在这方面已经有质的飞跃。这个术语源自描述从基于网页的Web应用到...

    详解jQuery中关于Ajax的几个常用的函数

    AJAX = 异步 JavaScript 和 XML。 AJAX 是一种用于创建快速动态网页的技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行...

    JavaScript_JQuery_CSS_CSS_DIV漂亮的实例123个

    38. jquery异步加载图片的插件jqGalScroll下载 39. jquery微型相册插件Micro Image Gallery下载 40. jQuery把图片放大及变亮特效插件下载 41. jquery拖动滚动条控制图片滚动及图片放大特效的示例 42. jquery...

    BHJavaScriptProjectTestAMD:通过该 demo 演示 requirejs 的使用,和了解 AMD 的规范

    学习AMD,CMD,CommonJS 这几种规范是什么AMD规范,定义一个API define()所有module定义都通过NodejsJS运行时,脱离浏览器限制.跨平台.提供系统级API访问功能,进程,I/O等等.npm Node的包管理工如何异步加载JS文件,并让其...

    task4

    Ajax(Asynchronous JavaScript and XML的缩写)是一种异步请求数据的web开发技术,对于改善用户的体验和页面性能很有帮助。简单地说,在不需要重新刷新页面的情况下,Ajax 通过异步请求加载后台数据,并在网页上...

    AJAX工作原理及优缺点详解

    大家都知道ajax并非一种新的技术,而是几种原有技术的结合体。它由下列技术组合而成。 使用CSS和XHTML来表示。 使用DOM模型来交互和动态显示。 使用XMLHttpRequest来和服务器进行异步通信。 使用javascript来绑定和...

    Java面试宝典2020修订版V1.0.1.doc

    34、Java创建对象有几种方式 22 35、写出验证Email的正则表达式 22 39、说出十种常见的异常 22 40什么是检查性异常和非检查性异常? 23 41、Java的异常处理机制是什么? 23 42、一个静态方法,里面可不可以用this和...

    vue-unit:基于vue-cli的几种情况的单元测试

    基本基于vue-cli的安装方式 本次案例是基于 ++ 来的,所有在选择测试方式时按 '上下箭头键' 选到karma这项。 特别说明本次案例还基于 的api 案例源码分别在src/components以及test/unit/specs 案例说明说明 静态页面...

    RequireJS使用注意细节

    RequireJS介绍 RequireJS由James Burke创建,他也是AMD规范的创始人。 RequireJS会让你以不同于往常的方式去写JavaScript。...使用RequireJS做异步模块加载,有几点值得注意的地方: 1.模块定义两种

    learning-react

    使用Create-React-App构建的项目包括对ES6语法的支持,以及Javascript语法的几种非官方/尚未完成的形式,例如Class Properties和JSX。 有关更多信息,请参见的列表。可用脚本在项目目录中,可以运行:npm start 在...

    DWR.xml配置文件说明书(含源码)

    DWR 自动将DOM、DOM4J、JDOM和XOM转换成DOM树,前面这几种类型都仅仅返回Document,Element,Node.DWR会自动将这些转换成浏览器DOM对象.通常在启动JDOM Converter时会有一个提示信息,除非你想采用JDOMconverter否则可以...

    unifyAsyncCall:一个函数装饰器,用于消除异步调用并为所有调用获得相同的promise结果

    当您从独立的位置多次调用异步函数时,这是一种常见的情况。 例如,当用户按下按钮时,您需要从服务器加载一些数据-他每秒可以按几次。 您可以在没有响应的情况下禁用该按钮。 或者,您可以统一请求。 安装 npm ...

Global site tag (gtag.js) - Google Analytics