Contents
- K(expr , root)
- length
- doc
- name
- type
- bind(type , fn)
- unbind([type , fn])
- fire(type)
- hasAttr(key)
- attr()
- attr(key)
- attr(key, val)
- attr(obj)
- removeAttr(key)
- get([i])
- eq(i)
- hasClass(cls)
- addClass(cls)
- removeClass(cls)
- html()
- html(val)
- hasVal()
- val()
- val(val)
- css()
- css(key)
- css(key, val)
- css(obj)
- width()
- width(val)
- height()
- height(val)
- opacity(val)
- data(key)
- data(key, val)
- pos()
- clone(bool)
- append(expr)
- before(expr)
- after(expr)
- replaceWith(expr)
- remove([keepChilds])
- show([val])
- hide()
- outer()
- isSingle()
- isInline()
- isBlock()
- contains(otherNode)
- parent()
- children()
- first()
- last()
- index()
- prev()
- next()
- scan(fn [, order])
.. index:: K
创建或选取KNode对象,KNode是原生node的封装,KNode对象拥有以下属性和方法。
- 参数:
- string|node expr: DOM元素、选择器表达式、HTML代码
- element root: DOM根元素,在root范围内选择DOM元素
- 返回: KNode
示例:
node = K('<div>abc</div>');
node = K('#id div');
node = K(document.getElementById('id'));
firstNode = node[0];.. index:: length
node数量
var length = K('#id div').length;.. index:: doc
第一个node的document对象。
var doc = K('#id div').doc;.. index:: name
第一个node的nodeName。
.. index:: type
第一个node的nodeType。1: Element, 3: textNode
.. index:: bind
将指定函数绑定到所有KNode的指定事件上。
- 参数:
- string type: 事件类型
- function fn: 回调函数
- 返回: KNode
示例:
K('#id div').bind('click', function() {
alert(this.nodeName + ': clicked');
});
K('#id div').click(function() {
alert(this.nodeName + ': clicked');
});.. index:: unbind
移除已绑定的事件函数。
- 参数:
- string type: 事件类型
- function fn: 回调函数
- 返回: KNode
示例:
K('#id').unbind('click', functionName); //移除指定的事件函数
K('#id').unbind('click'); //移除所有click事件函数
K('#id').unbind(); //移除所有事件函数.. index:: fire
执行绑定在第一个node上的事件函数。
- 参数:
- string type: 事件类型
- 返回: KNode
示例:
K('#id').fire('click');
K('#id').click();.. index:: hasAttr
判断第一个node是否拥有指定属性。
- 参数:
- string key: 属性名
- 返回: boolean
示例:
var bool = K('#id').hasAttr('border');.. index:: attr
取得第一个node的所有属性.
- 参数: 无
- 返回: object
示例:
var attrList = K('#id').attr(); //return key-value data取得第一个node的指定属性.
- 参数:
- string key: 属性名
- 返回: string
示例:
var border = K('#id').attr('border');设置所有node的属性。
- 参数:
- string key: 属性名
- string val: 属性值
- 返回: KNode
示例:
K('#id img').attr('border', 1);设置所有node的多个属性。
- 参数:
- object obj: key-value数组
- 返回: KNode
示例:
K('#id img').attr({
'width' : '100px',
'border' : 1
});.. index:: removeAttr
移除所有node的指定属性.
- 参数:
- string key: 属性名
- 返回: KNode
示例:
K('#id img').removeAttr('border');.. index:: get
取得原生node,当KNode的length为0时,返回null.
- 参数:
- int i: offset,默认值为0
- 返回: node
示例:
div1 = K('#id div').get(0);
div2 = K('#id div').get(1);.. index:: eq
将KNode对象转换成length为1的KNode对象。
- 参数:
- int i: The index of the element in the KNode object.
- 返回: KNode
示例:
K('div').eq(2).addClass('blue');.. index:: hasClass
判断第一个node是否拥有指定class。
- 参数:
- string cls: className
- 返回: boolean
示例:
var bool = K('#id').hasClass('class-name');.. index:: addClass
将指定className添加到所有node。
- 参数:
- string cls: className
- 返回: KNode
示例:
K('#id').addClass('class-name');.. index:: removeClass
移除所有node上的指定className。
- 参数:
- string cls: className
- 返回: KNode
示例:
K('#id').removeClass('class-name');.. index:: html
取得第一个node的innerHTML。
- 参数: 无
- 返回: string
示例:
var html = K('#id').html();设置所有node的innerHTML。
- 参数:
- string val: HTML字符串
- 返回: KNode
示例:
K('#id').html('<strong>abc</strong>');.. index:: hasVal
判断第一个node是否拥有value属性。
- 参数: 无
- 返回: boolean
示例:
bool = K('#textarea').hasVal(); //return true
bool = K('#div').hasVal(); //return false.. index:: val
取得第一个node的value。
- 参数: 无
- 返回: string
示例:
var value = K('#textarea').val();设置所有node的value。
- 参数: 无
- 返回: KNode
示例:
K('#textarea').val('abc');.. index:: css
取得第一个node的所有CSS.
- 参数: 无
- 返回: object
示例:
var cssList = K('#id').css(); //return key-value data取得第一个node的指定CSS.
- 参数:
- string key: CSS key
- 返回: string
示例:
var padding = K('#id').css('padding');设置所有node的CSS。
- 参数:
- string key: CSS key
- string val: CSS value
- 返回: KNode
示例:
K('#id div').css('border', '1px solid #000');设置所有node的多个CSS。
- 参数:
- object obj: key-value数组
- 返回: KNode
示例:
K('#id div').css({
'width' : '100px',
'height' : '50px',
'padding' : '10px'
});.. index:: width
取得第一个node的宽度(px).
- 参数: 无
- 返回: int
示例:
var width = K('#id').width();设置所有node的宽度。
- 参数:
- string val: 宽度
- 返回: KNode
示例:
K('#id div').width(200);
K('#id div').width('200px');
K('#id div').width('100%');.. index:: height
取得第一个node的高度(px).
- 参数: 无
- 返回: int
示例:
var height = K('#id').height();设置所有node的高度。
- 参数:
- string val: 高度
- 返回: KNode
示例:
K('#id div').height(200);
K('#id div').height('200px');
K('#id div').height('100%');.. index:: opacity
设置所有node的透明度.
- 参数:
- float val: 透明度,0~1
- 返回: KNode
示例:
K('#id').opacity(0.5);.. index:: data
取得已绑定的自定义数据。
- 参数:
- string key: data key
- 返回: string
示例:
var data = K('#id').data('data_id');绑定自定义数据。
- 参数:
- string key: data key
- string val: data value
- 返回: string
示例:
K('#id').data('abc', 1);.. index:: pos
取得第一个node在整个document上的x坐标和y坐标。
- 参数: 无
- 返回: string
示例:
var pos = K('#id').pos();
var x = pos.x;
var y = pos.y;.. index:: clone
复制第一个node,并返回第一个node的KNode。
- 参数:
- boolean bool: true时复制所有子节点,false时只复制父节点
- 返回: 新的KNode
示例:
var newKNode = K('#id').clone();.. index:: append
element添加一个子节点。
- 参数:
- string|node expr: DOM元素、选择器表达式、HTML代码
- 返回: KNode
示例:
K('#id').append(divNode);
K('#id').append('<div class="abc">def</div>');.. index:: before
node的前面添加一个节点。
- 参数:
- string|node expr: DOM元素、选择器表达式、HTML代码
- 返回: KNode
示例:
K('#id').before(divNode);
K('#id').before('<div class="abc">def</div>');.. index:: after
node的后面添加一个节点。
- 参数:
- string|node expr: DOM元素、选择器表达式、HTML代码
- 返回: KNode
示例:
K('#id').after(divNode);
K('#id').after('<div class="abc">def</div>');.. index:: replaceWith
替换node。
- 参数:
- string|node expr: DOM元素、选择器表达式、HTML代码
- 返回: KNode
示例:
K('#id').replaceWith(divNode);
K('#id').replaceWith('<div class="abc">def</div>');.. index:: remove
删除node。
- 参数:
- boolean keepChilds: 是否保留子节点,true或false,默认值为false
- 返回: KNode
示例:
K('#id').remove();.. index:: show
显示element。
- 参数:
- string val: display的值,默认值为block
- 返回: KNode
示例:
K('#id').show();.. index:: hide
隐藏element。
- 参数: 无
- 返回: KNode
示例:
K('#id').hide();.. index:: outer
取得第一个element的outerHTML。
- 参数: 无
- 返回: string
示例:
var html = K('#id').outer();.. index:: isSingle
判断第一个element是否有闭合标签。
- 参数: 无
- 返回: boolean
示例:
if (K('div').isSingle()) {
console.log('false');
}.. index:: isInline
判断第一个element是不是inline element。
- 参数: 无
- 返回: boolean
示例:
if (K('div').isInline()) {
console.log('false');
}.. index:: isBlock
判断第一个element是不是block element。
- 参数: 无
- 返回: boolean
示例:
if (K('div').isBlock()) {
console.log('true');
}.. index:: contains
判断第一个element是否包含指定node。
- 参数:
- node otherNode: 任意节点
- 返回: boolean
示例:
if (K('div#id').contains(K('div#id p')[0])) {
console.log('true');
}.. index:: parent
取得第一个node的父节点。
- 参数: 无
- 返回: KNode
示例:
var parentNode = K('#id').parent();.. index:: children
取得第一个node的子节点列表。
- 参数: 无
- 返回: KNode
示例:
K('#id').children().css('color', 'red');.. index:: first
取得第一个node的第一个子节点。
- 参数: 无
- 返回: KNode
示例:
var firstNode = K('#id').first();.. index:: last
取得第一个node的最后一个子节点。
- 参数: 无
- 返回: KNode
示例:
var lastNode = K('#id').last();.. index:: index
取得第一个node在父节点中的偏移位置。
- 参数: 无
- 返回: int
示例:
var index = K('div#id p').index();.. index:: prev
取得第一个node的上一个节点。
- 参数: 无
- 返回: KNode
示例:
var prevNode = K('#id').prev();.. index:: next
取得第一个node的下一个节点。
- 参数: 无
- 返回: KNode
示例:
var nextNode = K('#id').next();.. index:: scan
遍历第一个node的所有子节点。
- 参数:
- function fn: 回调函数
- boolean order: 遍历方向,true为顺序,false为逆序,默认值为true
- 返回: KNode
示例:
K('div#id').scan(function(node) (
console.log(node);
));