扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
示例代码:
创新互联建站,为您提供成都网站建设、网站制作公司、网站营销推广、网站开发设计,对服务宣传片制作等多个行业拥有丰富的网站建设及推广经验。创新互联建站网站建设公司成立于2013年,提供专业网站制作报价服务,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏心悦目的作品。 与客户共同发展进步,是我们永远的责任!
var container = $('#container');
container.addClass('loading'); // 加上loading动画
$.ajax({
url: '/path/to/file',
type: 'GET',
dataType: 'json'
})
.done(function() {
alert("请求成功");
})
.fail(function() {
alert("请求失败");
})
.always(function() {
container.removeClass('loading');
});
jquery加载页面的方法(页面加载完成就执行),看下windows.onload$(document).ready之间的区别。
1、$(function(){
$("#a").click(function(){
//adding your code here
});
});
2、$(document).ready(function(){
$("#a").click(function(){
//adding your code here
});
});
3、window.onload = function(){
$("#a").click(function(){
//adding your code here
});
}
html代码为input
type="button" id="a"点击/input,且页面需要引用jquery的js文件
一般的加载页面时调用js方法如下:
window.onload = function() {
$("table
tr:nth-child(even)").addClass("even"); //这个是jquery代码
};
这段代码会在整个页面的document全部加载完成以后执行。不幸的这种方式不仅要求页面的DOM
tree全部加载完成,而且要求所有的外部图片和资源全部加载完成。更不幸的是,如果外部资源,例如图片需要很长时间来加载,那么这个js效果就会让用户感觉失效了。
但是用jquery的方法:
$(document).ready(function() {
//
任何需要执行的js特效
$("table tr:nth-child(even)").addClass("even");
});
就仅仅只需要加载所有的DOM结构,在浏览器把所有的HTML放入DOM tree之前就执行js效果。包括在加载外部图片和资源之前。
还有一种简写的方式:
$(function() {
// 任何需要执行的js特效
$("table
tr:nth-child(even)").addClass("even");
});
如果页面使用了很多不是最初加载便可见的图片,有必要进行预加载:
?
1
2
3
4
5
6
$.preloadImages = function () {
for (var i = 0; i arguments.length; i++) {
$('img').attr('src', arguments[i]);
}
};
$.preloadImages('img/hover-on.png', 'img/hover-off.png');
我们在做网站的时候经常会遇到这样的问题:一个页面有大量的图片导致页面加载速度缓慢,经常会出现一个白页用户体验很不好。那么如何解决这个问题 呢?首先我们会想到的是提高服务器性能,使用静态缓存等手段来加快图片的加载速度,这的确是个好方法,不过有时候我们也可以从前台找一些解决的 方法。下面我来介绍一种在实际应用中经常会使用到的js预加载的方法。
由于i++的执行比str.load()要早,所以第二次执行的时候str已经被覆盖,直接使用$("body").append(str);所加载的只有第二张图。
代码需要改成
html
head
script type="text/javascript" src="../../jquery-1.10.2.js"/script
script type="text/javascript"
$(function(){
var imgs = [
"",
""
];
for(var i = 0; i imgs.length; i++){
var str = $("img style='width:200px; height:200px;'/");
str.attr("src", imgs[i]);
str.attr("nowIndex", i);
str.load(function(){
var nowNode = $(this);
alert("img"+nowNode.attr("nowIndex")+ " success!");
$("body").append(nowNode);
});
}
});
/script
/head
body
/body
/html
如果需要记录当前i的值,只能记录在标签里面的自定义属性里了。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流