首页 > 代码库 > [zepto]源码学习
[zepto]源码学习
$() : zepto选择器,与jquery选择器类似,但是不支持jquery的拓展css支持
$("div")选择页面内的全部div元素,并以集合形式返回 $("<div />")创建一个新的div元素,可以为其添加属性,写法为$("<div />",{text:"hello",id:"divTest",css:{color:‘#000‘} })
$.contains(parent,node):检查父节点是否包含给定的dom节点,如果两者是相同的节点,则返回 false
。
[数组&对象:核心方法]
$.each(collection,function(key,value){ //回调函数返回false时,each循环结束 }) : 以key-value形式遍历对象(数组、自定义对象等等)及其属性
$.extend(true/false,target,source):将source对象属性拷贝给target目标对象,第一个参数为true时为深拷贝,否则为浅拷贝
var target = {name:"lee"},source={name:"jack",age:30};
$.extend(true,target,source); //执行结束,target对象变为target{name:"jack",age:30}
$.fn 为zepto中的函数对象,可以在此基础上复写方法或添加自定义方法
$.grep(array,function(item){ //可以对item进行筛选,返回true或false }) 获取新数组,只包含返回true的项
$.map(ele,function(key,value){ //将返回的值以数组形式返回 }) 遍历数组并将每次遍历的回调函数返回值作为新数组
$.inArray(element,array,[fromIndex]); 返回array数组中element元素的下标 [fromIndex]可以指定开始位置,没有返回-1
$.isArray(element) , $.isFunction(ele) , $.isWindow(ele) 判定是否为数组、函数和浏览器窗口对象
$.type(obj) 返回obj的类型,与typeof不同的是可以返回其具体类型,返回值可能为:null
undefined
boolean
number
string
function
array
date
regexp
object
error
。
[字符串string:核心方法]
$.trim(str) 将string首尾空白删除 类似于原生方法 var str = " 123abc ";str.trim();
$.parseJSON(str) 将json格式的字符串str转为json对象
[节点操作:方法]
add: 向前一个节点集合中添加add元素,切记不是向前标签中写入元素
$("li").add("p") : 页面内的p元素加入页面内的li元素集合中,将所有的li和p标签的颜色设置为红色
addClass 向匹配元素上添加指定的class类名,多个class可以用空格分隔
[zepto]源码学习