本文整理汇总了Java中mf.org.w3c.dom.Node.getFirstChild方法的典型用法代码示例。如果您正苦于以下问题:Java Node.getFirstChild方法的具体用法?Java Node.getFirstChild怎么用?Java Node.getFirstChild使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mf.org.w3c.dom.Node
的用法示例。
在下文中一共展示了Node.getFirstChild方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getFirstElementChild
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
private Element getFirstElementChild(Node n) {
final Node top = n;
while (n != null) {
if (n.getNodeType() == Node.ELEMENT_NODE) {
return (Element) n;
}
Node next = n.getFirstChild();
while (next == null) {
if (top == n) {
break;
}
next = n.getNextSibling();
if (next == null) {
n = n.getParentNode();
if (n == null || top == n) {
return null;
}
}
}
n = next;
}
return null;
}
示例2: setCellIndex
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
public void setCellIndex( int cellIndex )
{
Node parent;
Node child;
parent = getParentNode();
if ( parent instanceof HTMLTableRowElement )
{
child = parent.getFirstChild();
while ( child != null )
{
if ( child instanceof HTMLTableCellElement )
{
if ( cellIndex == 0 )
{
if ( this != child )
parent.insertBefore( this, child );
return;
}
-- cellIndex;
}
child = child.getNextSibling();
}
}
parent.appendChild( this );
}
示例3: hasTextOnlyChildren
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/**
* Check if an EntityReference node has Text Only child nodes
*
* @param node
* @return true - Contains text only children
*/
private boolean hasTextOnlyChildren(Node node) {
Node child = node;
if (child == null) {
return false;
}
child = child.getFirstChild();
while (child != null) {
int type = child.getNodeType();
if (type == Node.ENTITY_REFERENCE_NODE) {
return hasTextOnlyChildren(child);
}
else if (type != Node.TEXT_NODE
&& type != Node.CDATA_SECTION_NODE
&& type != Node.ENTITY_REFERENCE_NODE) {
return false;
}
child = child.getNextSibling();
}
return true;
}
示例4: getCellIndex
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
public int getCellIndex()
{
Node parent;
Node child;
int index;
parent = getParentNode();
index = 0;
if ( parent instanceof HTMLTableRowElement )
{
child = parent.getFirstChild();
while ( child != null )
{
if ( child instanceof HTMLTableCellElement )
{
if ( child == this )
return index;
++ index;
}
child = child.getNextSibling();
}
}
return -1;
}
示例5: isEqualNode
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/**
* DOM Level 3 WD- Experimental.
* Override inherited behavior from NodeImpl to support deep equal.
*/
public boolean isEqualNode(Node arg) {
if (!super.isEqualNode(arg)) {
return false;
}
// there are many ways to do this test, and there isn't any way
// better than another. Performance may vary greatly depending on
// the implementations involved. This one should work fine for us.
Node child1 = getFirstChild();
Node child2 = arg.getFirstChild();
while (child1 != null && child2 != null) {
if (!child1.isEqualNode(child2)) {
return false;
}
child1 = child1.getNextSibling();
child2 = child2.getNextSibling();
}
if (child1 != child2) {
return false;
}
return true;
}
示例6: traverse
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
public static void traverse(Node node, int depth) {
indent(depth);
System.out.print("<"+node.getNodeName());
if (node.hasAttributes()) {
NamedNodeMap attrs = node.getAttributes();
for (int i=0; i<attrs.getLength(); i++) {
System.out.print(" "+((Attr)attrs.item(i)).getName()+"=\""+((Attr)attrs.item(i)).getValue()+"\"");
}
}
if (node.hasChildNodes()) {
System.out.println(">");
depth+=4;
for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
traverse(child, depth);
}
depth-=4;
indent(depth);
System.out.println("</"+node.getNodeName()+">");
}
else {
System.out.println("/>");
}
}
示例7: getFirstVisibleChildElement
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/** Finds and returns the first visible child element node. */
public static Element getFirstVisibleChildElement(Node parent) {
// search for node
Node child = parent.getFirstChild();
while (child != null) {
if (child.getNodeType() == Node.ELEMENT_NODE &&
!isHidden(child)) {
return (Element)child;
}
child = child.getNextSibling();
}
// not found
return null;
}
示例8: getFirstChildElement
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/**
* Finds and returns the first child node with the given name and
* attribute name, value pair.
*/
public static Element getFirstChildElement(Node parent,
String elemName,
String attrName,
String attrValue) {
// search for node
Node child = parent.getFirstChild();
while (child != null) {
if (child.getNodeType() == Node.ELEMENT_NODE) {
Element element = (Element)child;
if (element.getNodeName().equals(elemName) &&
element.getAttribute(attrName).equals(attrValue)) {
return element;
}
}
child = child.getNextSibling();
}
// not found
return null;
}
示例9: getFirstChildElementNS
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/** Finds and returns the first child node with the given qualified name. */
public static Element getFirstChildElementNS(Node parent,
String uri, String localpart) {
// search for node
Node child = parent.getFirstChild();
while (child != null) {
if (child.getNodeType() == Node.ELEMENT_NODE) {
String childURI = child.getNamespaceURI();
if (childURI != null && childURI.equals(uri) &&
child.getLocalName().equals(localpart)) {
return (Element)child;
}
}
child = child.getNextSibling();
}
// not found
return null;
}
示例10: getElementById
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/**
* Recursive method retreives an element by its <code>id</code> attribute.
* Called by {@link #getElementById(String)}.
*
* @param elementId The <code>id</code> value to look for
* @return The node in which to look for
*/
private Element getElementById( String elementId, Node node )
{
Node child;
Element result;
child = node.getFirstChild();
while ( child != null )
{
if ( child instanceof Element )
{
if ( elementId.equals( ( (Element) child ).getAttribute( "id" ) ) )
return (Element) child;
result = getElementById( elementId, child );
if ( result != null )
return result;
}
child = child.getNextSibling();
}
return null;
}
示例11: nextNode
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
Node nextNode(Node node, boolean visitChildren) {
if (node == null) return null;
Node result;
if (visitChildren) {
result = node.getFirstChild();
if (result != null) {
return result;
}
}
// if hasSibling, return sibling
result = node.getNextSibling();
if (result != null) {
return result;
}
// return parent's 1st sibling.
Node parent = node.getParentNode();
while (parent != null
&& parent != fDocument
) {
result = parent.getNextSibling();
if (result != null) {
return result;
} else {
parent = parent.getParentNode();
}
} // while (parent != null && parent != fRoot) {
// end of list, return null
return null;
}
示例12: indexOf
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/** what is the index of the child in the parent */
int indexOf(Node child, Node parent) {
if (child.getParentNode() != parent) return -1;
int i = 0;
for(Node node = parent.getFirstChild(); node!= child; node=node.getNextSibling()) {
i++;
}
return i;
}
示例13: undeferChildren
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/**
* Traverses the DOM Tree and expands deferred nodes and their
* children.
*
*/
protected void undeferChildren(Node node) {
Node top = node;
while (null != node) {
if (((NodeImpl)node).needsSyncData()) {
((NodeImpl)node).synchronizeData();
}
NamedNodeMap attributes = node.getAttributes();
if (attributes != null) {
int length = attributes.getLength();
for (int i = 0; i < length; ++i) {
undeferChildren(attributes.item(i));
}
}
Node nextNode = null;
nextNode = node.getFirstChild();
while (null == nextNode) {
if (top.equals(node))
break;
nextNode = node.getNextSibling();
if (null == nextNode) {
node = node.getParentNode();
if ((null == node) || (top.equals(node))) {
nextNode = null;
break;
}
}
}
node = nextNode;
}
}
示例14: getHead
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/**
* Obtains the <HEAD> element in the document, creating one if does
* not exist before. The <HEAD> element is the first element in the
* <HTML> in the document. The <HTML> element is obtained by
* calling {@link #getDocumentElement}. If the element does not exist, one
* is created.
* <P>
* Called by {@link #getTitle}, {@link #setTitle}, {@link #getBody} and
* {@link #setBody} to assure the document has the <HEAD> element
* correctly placed.
*
* @return The <HEAD> element
*/
public synchronized HTMLElement getHead()
{
Node head;
Node html;
Node child;
Node next;
// Call getDocumentElement() to get the HTML element that is also the
// top-level element in the document. Get the first element in the
// document that is called HEAD. Work with that.
html = getDocumentElement();
synchronized ( html )
{
head = html.getFirstChild();
while ( head != null && ! ( head instanceof HTMLHeadElement ) )
head = head.getNextSibling();
// HEAD exists but might not be first element in HTML: make sure
// it is and return it.
if ( head != null )
{
synchronized ( head )
{
child = html.getFirstChild();
while ( child != null && child != head )
{
next = child.getNextSibling();
head.insertBefore( child, head.getFirstChild() );
child = next;
}
}
return (HTMLElement) head;
}
// Head does not exist, create a new one, place it at the top of the
// HTML element and return it.
head = new HTMLHeadElementImpl( this, "HEAD" );
html.insertBefore( head, html.getFirstChild() );
}
return (HTMLElement) head;
}
示例15: checkUnboundNamespacePrefixedNode
import mf.org.w3c.dom.Node; //导入方法依赖的package包/类
/**
* DOM Level 3:
* Check a node to determine if it contains unbound namespace prefixes.
*
* @param node The node to check for unbound namespace prefices
*/
protected void checkUnboundNamespacePrefixedNode (Node node) throws IOException{
if (fNamespaces) {
if (DEBUG) {
System.out.println("==>serializeNode("+node.getNodeName()+") [Entity Reference - Namespaces on]");
System.out.println("==>Declared Prefix Count: " + fNSBinder.getDeclaredPrefixCount());
System.out.println("==>Node Name: " + node.getNodeName());
System.out.println("==>First Child Node Name: " + node.getFirstChild().getNodeName());
System.out.println("==>First Child Node Prefix: " + node.getFirstChild().getPrefix());
System.out.println("==>First Child Node NamespaceURI: " + node.getFirstChild().getNamespaceURI());
}
Node child, next;
for (child = node.getFirstChild(); child != null; child = next) {
next = child.getNextSibling();
if (DEBUG) {
System.out.println("==>serializeNode("+child.getNodeName()+") [Child Node]");
System.out.println("==>serializeNode("+child.getPrefix()+") [Child Node Prefix]");
}
//If a NamespaceURI is not declared for the current
//node's prefix, raise a fatal error.
String prefix = child.getPrefix();
prefix = (prefix == null ||
prefix.length() == 0) ? XMLSymbols.EMPTY_STRING : fSymbolTable.addSymbol(prefix);
if (fNSBinder.getURI(prefix) == null && prefix != null) {
fatalError("The replacement text of the entity node '"
+ node.getNodeName()
+ "' contains an element node '"
+ child.getNodeName()
+ "' with an undeclared prefix '"
+ prefix + "'.");
}
if (child.getNodeType() == Node.ELEMENT_NODE) {
NamedNodeMap attrs = child.getAttributes();
for (int i = 0; i< attrs.getLength(); i++ ) {
String attrPrefix = attrs.item(i).getPrefix();
attrPrefix = (attrPrefix == null ||
attrPrefix.length() == 0) ? XMLSymbols.EMPTY_STRING : fSymbolTable.addSymbol(attrPrefix);
if (fNSBinder.getURI(attrPrefix) == null && attrPrefix != null) {
fatalError("The replacement text of the entity node '"
+ node.getNodeName()
+ "' contains an element node '"
+ child.getNodeName()
+ "' with an attribute '"
+ attrs.item(i).getNodeName()
+ "' an undeclared prefix '"
+ attrPrefix + "'.");
}
}
}
if (child.hasChildNodes()) {
checkUnboundNamespacePrefixedNode(child);
}
}
}
}