java - 如何设置 `org.w3c.dom.element` 的第一个 child ?

标签 java dom w3c

我有一个 'org.w3c.dom.element' 类的 rootelment rootSVG ,我有一个方法,它根据条件设置脚本的名称,并创建一个 scriptelement 和使用appendchild将该脚本元素插入为根元素的子节点。它设置根元素的属性(“onload”)并作为此脚本。

但是我们知道appendchild总是插入一个节点作为最后一个子节点,我想知道是否有任何机制可以将此元素设置为根元素的第一个子节点,因为在IE中我有时会收到特定的消息当我们第一次加载页面时,脚本是未定义的。下面给出的是代码片段。

     if ( bEnableMouseEvents )
     {
        String scriptName = "SvgScriptUtils";            
        if ( !bUsingPlugin )
           scriptName = scriptName + "Native";
        // insert external javascript driver for tooltips/navigation-mode/popups            
        rootSVG.setAttribute("contentScriptType", "text/ecmascript");
        Element scriptElement = doc.createElementNS(SVGDOMImplementation.SVG_NAMESPACE_URI, SVGConstants.SVG_SCRIPT_TAG);
        scriptElement.setAttribute("type", "text/ecmascript");
        XlinkHref.set(scriptElement, "/scripts/" + scriptName + ".fs");
        rootSVG.appendChild(scriptElement);
        rootSVG.setAttribute("onload", scriptName + ".initMOS(evt)");           
     }    

最佳答案

尝试 Node.insertBefore(Node newChild, Node refChild) 其中 refChild 将是您当前的第一个子节点(如果您不知道,您可能会得到通过调用 Node.getFirstChild() 来实现)。

有关更多信息,请查看javadoc .

关于java - 如何设置 `org.w3c.dom.element` 的第一个 child ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20214958/

相关文章:

html - 是否需要在<table>中添加cellspacing ="0"cellpadding ="0"?

css - CSS Generated Content Module Level 3中,生成的内容是否定义为显示在文档树上?

java - 如何使用 JavaScript 更新我的 JSP 页面的某些组件

javascript - React.js - 使用来自不同级别组件层次结构的 DOM 元素

javascript - 设置 `checkbox.checked = false` 是否也不能清除 HTML 属性?

java - 有没有办法检查文档中是否存在标签名称? (DOM - Jython)

html - @supports 规则如何支持此语句中的动画名称?

java - 使用一个参数搜索数组 - Java

java - 零除 Java 整数与 double

java - JPA/Hibernate 可以与其他持久性框架(如 jOOQ)结合使用吗