Dojo学习笔记(7. dojo.dom)
模块:dojo.dom
dojo.dom.isNode
测试指定对象是否为节点
Usage Example:
dojo.dom.isNode(dojo.byId('edtTitle'));
dojo.dom.getUniqueId
取得唯一id
Usage Example:
dojo.dom.getUniqueId(); //will return dj_unique_#
dojo.dom.firstElement = dojo.dom.getFirstChildElement
取得指定节点下的第一个满足指定Tag条件的子节点
Usage Example:
dojo.dom.firstElement(parentNode, 'SPAN');
dojo.dom.lastElement = dojo.dom.getLastChildElement
取得指定节点下的最后一个满足指定Tag条件的子节点
Usage Example:
dojo.dom.lastElement(parentNode, 'SPAN');
dojo.dom.nextElement = dojo.dom.getNextSiblingElement
取得指定节点的下一个满足指定Tag条件的子节点
Usage Example:
dojo.dom.nextElement(node, 'SPAN');
dojo.dom.prevElement = dojo.dom.getPreviousSiblingElement
取得指定节点的前一个满足指定Tag条件的子节点
Usage Example:
dojo.dom.prevElement(node, 'SPAN');
dojo.dom.moveChildren
把指定节点下的所有子节点移动到目标节点下,并返回移动的节点数
Usage Example:
dojo.dom.moveChildren(srcNode, destNode, true); //仅移动子节点,srcNode中的文字将被丢弃
dojo.dom.moveChildren(srcNode, destNode, false);//包括文字和子节点都将被移动到目标节点下
dojo.dom.copyChildren
把指定节点下的所有子节点复制到目标节点下,并返回复制的节点数
Usage Example:
dojo.dom.moveChildren(srcNode, destNode, true); //仅复制子节点,srcNode中的文字将被忽略
dojo.dom.moveChildren(srcNode, destNode, false);//包括文字和子节点都将被复制到目标节点下
dojo.dom.removeChildren
删除指定节点下的所有子节点,并返回删除的节点数
Usage Example:
dojo.dom.moveChildren(node);
dojo.dom.replaceChildren
用指定的新节点替换父节点下的所有子节点
Usage Example:
dojo.dom.replaceChildren(node, newChild); //目前还不支持newChild为数组形式
dojo.dom.removeNode
删除指定的节点
Usage Example:
dojo.dom.removeNode(node);
dojo.dom.getAncestors
返回指定节点的父节点集合
Usage Example:
dojo.dom.getAncestors(node, null, false); //返回所有的父节点集合(包括指定的节点node)
dojo.dom.getAncestors(node, null, true); //返回最近的一个父节点
dojo.dom.getAncestors(node, function(el){/* 此处增加过滤条件 */return true}, false); //返回所有满足条件的父节点集合
dojo.dom.getAncestorsByTag
返回所有符合指定Tag的指定节点的父节点集合
Usage Example:
dojo.dom.getAncestorsByTag(node, 'span', false); //返回所有的类型为SPAN的父节点集合
dojo.dom.getAncestorsByTag(node, 'span', true); //返回最近的一个类型为SPAN的父节点
dojo.dom.getFirstAncestorByTag
返回最近的一个符合指定Tag的指定节点的父节点
Usage Example:
dojo.dom.getFirstAncestorByTag(node, 'span'); //返回最近的一个类型为SPAN的父节点
dojo.dom.isDescendantOf
判断指定的节点是否为另一个节点的子孙
Usage Example:
dojo.dom.isDescendantOf(node, ancestor, true); //判断node是否为ancestor的子孙
dojo.dom.isDescendantOf(node, node, false); //will return true
dojo.dom.isDescendantOf(node, node, true); //will return false
dojo.dom.innerXML
返回指定节点的XML
Usage Example:
dojo.dom.innerXML(node);
dojo.dom.createDocument
创建一个空的文档对象
Usage Example:
dojo.dom.createDocument();
dojo.dom.createDocumentFromText
根据文字创建一个文档对象
Usage Example:
dojo.dom.createDocumentFromText('<?xml version="1.0" encoding="gb2312" ?><a>1</a>','text/xml');
dojo.dom.prependChild
将指定的节点插入到父节点的最前面
Usage Example:
dojo.dom.prependChild(node, parent);
dojo.dom.insertBefore
将指定的节点插入到参考节点的前面
Usage Example:
dojo.dom.insertBefore(node, ref, false); //如果满足要求的话就直接退出
dojo.dom.insertBefore(node, ref, true);
dojo.dom.insertAfter
将指定的节点插入到参考节点的后面
Usage Example:
dojo.dom.insertAfter(node, ref, false); //如果满足要求的话就直接退出
dojo.dom.insertAfter(node, ref, true);
dojo.dom.insertAtPosition
将指定的节点插入到参考节点的指定位置
Usage Example:
dojo.dom.insertAtPosition(node, ref, "before");//参考节点之前
dojo.dom.insertAtPosition(node, ref, "after"); //参考节点之后
dojo.dom.insertAtPosition(node, ref, "first"); //参考节点的第一个子节点
dojo.dom.insertAtPosition(node, ref, "last"); //参考节点的最后一个子节点
dojo.dom.insertAtPosition(node, ref); //默认位置为"last"
dojo.dom.insertAtIndex
将指定的节点插入到参考节点的子节点中的指定索引的位置
Usage Example:
dojo.dom.insertAtIndex(node, containingNode, 3); //把node插入到containingNode的子节点中,使其成为第3个子节点
dojo.dom.textContent
设置或获取指定节点的文本
Usage Example:
dojo.dom.textContent(node, 'text'); //设置node的文本为'text'
dojo.dom.textContent(node); //返回node的文本
dojo.dom.hasParent
判断指定节点是否有父节点
Usage Example:
dojo.dom.hasParent(node);
dojo.dom.isTag
判断节点是否具有指定的tag
Usage Example:
var el = document.createElement("SPAN");
dojo.dom.isTag(el, "SPAN"); //will return "SPAN"
dojo.dom.isTag(el, "span"); //will return ""
dojo.dom.isTag(el, "INPUT", "SPAN", "IMG"); //will return "SPAN"