57.3%的据据的的也就是是说
jQuery如此如此,但是但是臃肿的体积也让人头痛不已不已不已不已不已不已不已不已不已不已不已不已不已不已不已不已不已不已不已不已不已后91KB。
这样体积,即使宽带,完全环境也需要需要需要需要或更长长长本质上,jQuery只是一操作操作的工具,我们不仅:如果要:如果如果只是是几个网页,是否
2006年,jQuery诞生时候,主要主要消除不同浏览器(主要主要是是是是是是是是是是是是是是市场份额下降,以ecmascript为javascript标准语法,正正,正正越来越广泛的支持支持支持。。。开发者使用使用使用使用使用使用使用使用标准语法标准语法标准语法标准语法标准语法标准语法
javascript标准语法
一,选取
jQuery的是通过种选择器选择器,dom元素,可以
var $ = document.queryselectorall.bind(document);
这里需要的,QuerySelectorallAll方法方法返回是是是对象对象对象对象对象对象对象对象对象对象对象对象对象对象对象对象对象对象对象对象对象像数数数组组((有有数字数字属性属性属性属性属性)转为数组。
myList = array.prototype.slice.call(mynodelist);
二,dom操作
dom本身就丰富操作方法方法方法方法方法方法
尾部追加dom元素。
// jQuery写法
$(parent).append($(child));
// DOM写法
parent.appendchild(儿童)
头部插入dom元素。
// jQuery写法
$(parent).prepend($(child));
// DOM写法
parent.insertbefore(child,parent.childnodes [0])
删除dom元素元素
// jQuery写法
$(child).remove()
// DOM写法
child.parentnode.removechild(儿童)
三,事件监听
jQuery的上,AddeventListener模拟模拟。。
element.prototype.on = element.prototype.addeventlistener;
为了使用,可以在在在对象对象
nodelist.prototype.on = function(event,fn){
[] ['foreach']。调用(this,function(el){
El.on(event,fn);
});
返回此;
};
四,事件触发
jQuery trigger方法方法需要部署,相对部署部署部署部署。。
element.prototype.trigger = function(type,data){
var event = document.createevent('htmlevents');
event.initevent(类型,true,true);
event.data =数据|| {};
event.eventName = type;
event.target = this;
this.disPatchEvent(event);
返回此;
};
Nodelist对象对象上部署这个。。。
nodelist.prototype.trigger = function(event){
[] ['foreach']。调用(this,function(el){
el ['触发'](event);
});
返回此;
};
五文档
目前的实践,是将将将将将脚本脚本文件都放页面加载。这样的话的话的话的话的话,document。了。
六,attry方法
jQuery使用attry方法,读读元素的。。
$(“#图片”)。attr(“ src”,“”);
dom元素允许取属性值,写法要。。。
$(“#图片”)。src =“”;
需要注意,输入this.value返回返回输入框的的值'value')和this.getAttibute('href')。
七,addClass方法
jQuery的addClass方法,用于为dom元素元素个个。。。
$('body')。addClass('hasjs');
dom元素本身一个读写的的的的的属性属性
document.body.classname ='hasjs';
// 或者
document.body.classname +='hasjs';
html 微官网开发建设 5还提供个个个个对象对象
document.body.classlist.add('hasjs');
document.body.body.classlist.remove('hasjs');
document.body.classlist.toggle('hasjs');
document.body.classlist.contains('hasjs');
CSS
jQuery的css方法,用来用来网页。。。
$(node).css(“颜色”,“红色”);
dom元素有个属性属性,可以可以直接。。
element.Style.Color =“ red” ;;
// 或者
element.csstext +='颜色:红色';
九,数据储存
jQuery对象可以储存。
$(“ Body”)。数据(“ Foo”,52);
html 5有一个个对象,也也类似的功能((((((((((支持支持支持支持支持),不过不过支持。。。。
element.dataset.user = json.stringify(user);
element.dataset.score =得分;
十,ajax
jQuery的ajax方法,用用异步。
$ .ajax({
类型:“ post”,
URL:“ Some.php”,
数据:{名称:“约翰”,位置:“波士顿”}
})。完成(函数(msg){
警报(“保存数据:” + msg);
});
我们可以定义个个函数,模拟
功能请求(键入,URL,OPTS,回调){
var Xhr = new 专业全网营销型网站服务 XMLHTTPRequest();
if(typeof opts ==='函数') 【微信建设哪家】】 {
回调= opts;
opts = null;
}
xhr.open(type,url);
var fd = new formdata();
if(type ==='post'&& opts){
对于(opts中的var键){
fd.append(key,json.stringify(opts [key]));
}
}
xhr.onload = function(){
callback(json.parse(xhr.Response));
};
xhr.send(opts?fd:null);
}
然后,基于,请求函数,模拟
var get = request.bind(this,'get');
var post = request.bind(this,'post');
十一,动画
jQuery的动画方法,用于用于动画。。
$ foo.animate('slow',{x:'+= 10px'})
jQuery的动画,很大部分基于目前目前目前目前,CSS 3的动画远比比,dom强大,所以所以强大强大,所以所以所以所以所以可以效果css,css,css,css,然后然后然后然后操作操作操作
foo.classlist.add('animate');
如果需要动画回调函数,CSS 3也了的事件。。。
El.AddeventListener(过渡);
El.AddeventListener(“ 定制网站哪家公司好 TransitionEnd”,过渡);
十二,替代方案
由于jQuery体积过大,替代替代层。。
其中,最有名是是是 【专业网页定制】 1.0版的原始大小是55kb,29kb,gzip压缩10KB。
如果不求大兼容,只希望模拟模拟
此外,jQuery本身采用设计,可以可以选择自己需要模块。。具体做法做法参见参见它的的的的
口碑好的网站开发价格 网站建设公司价格
请立即点击咨询我们或拨打咨询热线: 13968746378,我们会详细为你一一解答你心中的疑难。项目经理在线