$(".list").each(function(key,value){ var height = parseFloat($(value).height()); $(value).data('height',height); console.log($(value).data()); });
http://www.jquery123.com/data/
.closest( selector )返回: jQuery
描述: 从元素本身开始,在DOM 树上逐级向上级元素匹配,并返回最先匹配的祖先元素。
我们可以传递一个DOM元素作为上下文在其中搜索最近的元素的。
http://www.jquery123.com/jQuery.fn.extend/
jQuery.fn.extend( object )Returns: Object
描述: 一个对象的内容合并到jQuery的原型,以提供新的jQuery实例方法。
-
version added: 1.0jQuery.fn.extend( object )
-
objectType: Object一个对象,用来合并到jQuery的原型。
-
jQuery.fn.extend()
方法继承了jQuery原型($.fn
)对象,以提供jQuery原型新的方法,可以链式调用jQuery()
函数。.empty()返回: jQuery
描述: 从DOM中移除集合中匹配元素的所有子节点。
-
添加的版本: 1.0.empty()
-
这个方法不接受任何参数。
-
这个方法不仅移除子元素(和其他后代元素),同样移除元素里的文本。因为,根据说明,元素里任何文本字符串都被看做是该元素的子节点。请看下面的HTML:
1
2
3
4
|
<div class="container"> <div class="hello">Hello</div> <div class="goodbye">Goodbye</div> </div> |
我们可以移除里面的任何元素
1
|
$('.hello').empty(); |
结果文本 Hello
文本被删除:
.off( events [, selector ] )
-
events类型: PlainObject一个对象的字符串键所代表的一个或多个空格分隔的事件类型和可选的命名空间,值表示先前事件绑定的处理函数。
-
selector类型: String一个选择器,当绑定事件处理程序时,先前传递给
.on()
的那个。
$上挂接方法:
$.PopBox = {
alert : alert,
confirm : confirm
}
描述: 返回的jQuery对象匹配的DOM元素的数量。
-
添加的版本: 1.0.size()
-
这个方法不接受任何参数。
-
.size()
方法从jQuery 1.8开始被废弃。使用.length
属性代替。
.size()
方法功能上等价于.length
属性。但是.length
属性是首选的,因为它没有函数调用时的额外开销。
http://www.jquery123.com/jQuery.extend/
当我们提供两个或多个对象给$.extend()
,对象的所有属性都添加到目标对象(target参数)。
如果只有一个参数提供给$.extend()
,这意味着目标参数被省略。在这种情况下,jQuery对象本身被默认为目标对象。这样,我们可以在jQuery的命名空间下添加新的功能。这对于插件开发者希望向 jQuery 中添加新函数时是很有用的。
请记住,目标对象(第一个参数)将被修改,并且将通过$.extend()
返回。然而,如果我们想保留原对象,我们可以通过传递一个空对象作为目标对象:
1
|
var object = $.extend({}, object1, object2); |
if(!isListItem&&!ulList.is(':hidden')){
ulList.hide();
}
http://www.jquery123.com/is/
Example
Select <input> elements with type="text":
$(":text")
jQuery noConflict() 方法
noConflict() 方法会释放会 $ 标识符的控制,这样其他脚本就可以使用它了。
var
// Map over jQuery in case of overwrite
_jQuery = window.jQuery,
// Map over the $ in case of overwrite
_$ = window.$;
jQuery.noConflict = function( deep ) {
if ( window.$ === jQuery ) {
window.$ = _$;
}
if ( deep && window.jQuery === jQuery ) {
window.jQuery = _jQuery;
}
return jQuery;
};
.data()
http://www.jquery123.com/data/
我们一直在用啊。。。被我忽略了。data-name $().data("name")
在jQuery的官方文档中,提示用户这jQuery.data()是一个低级的方法,应该用.data()方法来代替。$.data( element, key, value )可以对DOM元素附加任何类型的数据,但应避免循环引用而导致的内存泄漏问题。
二者都是用来在元素上存放数据也就平时所说的数据缓存,都返回jQuery对象,但是内部的处理确有本质的区别。