网站建设资讯

NEWS

网站建设资讯

jquery延迟加载,jsp延迟加载

js延迟加载的方式有哪些?

一般有以下几种方式:

成都创新互联-专业网站定制、快速模板网站建设、高性价比交口网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式交口网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖交口地区。费用合理售后完善,十余年实体公司更值得信赖。

defer 属性

HTML 4.01 为 script标签定义了 defer属性。

用途:表明脚本在执行时不会影响页面的构造。也就是说,脚本会被延迟到整个页面都解析完毕之后再执行。

在script 元素中设置 defer 属性,等于告诉浏览器立即下载,但延迟执行。

!DOCTYPE htmlhtmlheadscript src="test1.js" defer="defer"/scriptscript src="test2.js" defer="defer"/script/headbody !-- 这里放内容 -- /body/html   

说明:虽然script 元素放在了head元素中,但包含的脚本将延迟浏览器遇到/html标签后再执行。

HTML5规范要求脚本按照它们出现的先后顺序执行。在现实当中,延迟脚本并不一定会按照顺序执行。

defer属性只适用于外部脚本文件。支持 HTML5 的实现会忽略嵌入脚本设置的 defer属性。

2. async 属性

HTML5 为 script标签定义了 async属性。与defer属性类似,都用于改变处理脚本的行为。同样,只适用于外部脚本文件。

目的:不让页面等待脚本下载和执行,从而异步加载页面其他内容。

异步脚本一定会在页面 load 事件前执行。

不能保证脚本会按顺序执行。

!DOCTYPE htmlhtmlhead script src="test1.js" async/scriptscript src="test2.js" async/script /headbody !-- 这里放内容 -- /body/html   

4.使用jQuery的getScript()方法

$.getScript("outer.js",function(){//回调函数,成功获取文件后执行的函数  

console.log("脚本加载完成")  

});

5.使用setTimeout延迟方法

6.让JS最后加载

把js外部引入的文件放到页面底部,来让js最后引入,从而加快页面加载速度

by三人行慕课

javascript或jquery如何实现延迟加载js文件

1、把js的代码放在body里面,最好是放在页面最后的位置,而不是放在head里面。这样整个页面加载结束的时候才会加载到js。

2、你可以使用js函数动态的修改页面,加载js。下面附上两个函数,可以用来加载js或者css。

/*Title : 包含其它 js 文件。

* Description : 将其它 Js 文件引入本文件中,方便管理、维护。*/

function include_js(path) {

var sobj = document.createElement('script');

sobj.type = "text/javascript";

sobj.src = path;

var headobj = document.getElementsByTagName('head')[0];

headobj.appendChild(sobj);

}

/* Title : 包含其它 css 文件。

* Description : 将其它 css 文件引入本文件中,方便管理、维护。 */

function include_css(path) {

var fileref = document.createElement("link")

fileref.rel = "stylesheet";

fileref.type = "text/css";

fileref.href = path;

}

3、利用ajax加载js。

Jquery.lazyload.js究竟要怎么使用

lazyload.js

延迟加载效果是为了快速展现页面图片,比如很多屏的图片,文件比较大,这个插件目的不是为了节省服务器资源,而是为了浏览体验,如果你拉动到底部,其实也是一样的消耗服务器资源。是有选择性的请求图片,很多人曲解了这个意思,其实插件并没有给你节约带宽,而是腾出来给视觉区域的图片。

有很多图片为主的网站利用这个能大大提高用户体验,但是有一点不好就是对搜索引擎seo优化不友好,因为蜘蛛看到的不是真实地址,那么如何解决类似问题呢?其实这个问题可以利用js避免掉SEO问题。代码如下:

script

$(document).ready(function() {

$("img").removeAttr("src");

});

$(function(){

$("img").lazyload({effect: "fadeIn"});   

})

/script

页面图片写法如下

img src="1.jpg" data-original="1.jpg" alt=""

img src="2.jpg" data-original="2.jpg" alt=""

这样效果不影响,只是利用了jQuery的便利,$(document).ready()在文档dom加载完毕就删除了src,所以不会有请求,这样就相当于在我们使用前,是利用js删除的src,而不是我们程序不输入图片。

jquery延迟加载遇到不间断的滚动图片条后,后面的图片就不显示的,怎么解决?

延迟加载一般是根据当前滚动条的位置来决定何时加载图片。

所以个人觉得,在做图片延迟加载时,不建议直接对img直接筛选

针对主要内容区域进行延迟加载就可以了。

例如 $("#Containter img").lazyload()

这样做的目的就是合理避开你需要滚动的地方


网站栏目:jquery延迟加载,jsp延迟加载
分享链接:http://cdweb.net/article/dsdgeoh.html