CKEDITOR在IE上的getElementsByTag时丢失自定义节点

时间:2012-10-26 09:38:42

标签: javascript html ckeditor nodes

ckeditor在IE上的getElementsByTag上丢失自定义标签

文档内容中的

如下:

 <initTag id="ss">
  <myTag id="aa1">text</myTag>
  <myTag id="ab2">Text</myTag>
  <otherTag id="aac">
    <myTag id="ab3">text</myTag>
  </otherTag>
</initTag>

<initTag>位于(变量)itag

var nNode = itag.getElementsByTag("myTag"); 
for(var x; x<nNode.count();x++){
alert(nNode.getItem(x).getOuterHtml());
}

警告信息如下:

(新添加的除外)哪一个已经在文件中:

<MYTAG id="AB3">
在添加标签之前

仅限于:

<myTag id="ab2">Text</myTag>

如何正确获取所有节点?

请同时检查以下代码:

<head runat="server">
       <script language="javascript" type="text/javascript">
        function btnclick() {
            var testctrl = document.createElement("myTag");
            testctrl.innerHTML = "test Val";
           var tt= document.getElementById("temp");
          tt.appendChild(testctrl);
            var testnd = document.getElementsByTagName("myTag");
          for (var i = 0; i < testnd.length; i++) {

              alert(testnd.item(i).outerHTML);
          }

        }
    </script>
</head>
<body>
<div id="temp" >
    </div>
    <input type="button" id="tbtn" onclick="javascript:btnclick();return false;" value="ClickMe"/>
  <myTag>1</myTag>
    <myTag>2</myTag>
    <myTag>3</myTag>
    <myTag>4</myTag>
    <myTag>5</myTag>
    <myTag>6</myTag>
    <myTag>7</myTag>
    <myTag>8</myTag>
    <myTag>9</myTag>
    <myTag>0</myTag>

</body>

2 个答案:

答案 0 :(得分:3)

这不是CKEditor丢失这个节点。你必须在IE中添加对它们的支持。

在类似问题上查看我的其他答案:

答案 1 :(得分:0)

请参阅下面的链接:

http://code.google.com/p/html5shiv/

此链接可以解决html5标记问题,您也可以将自己的标记添加到此js文件中。 可能这是你的要求。

您应该在Html5shiv.js上添加您的customTags,如下所示:

if (html5.shivCSS && !supportsHtml5Styles && !data.hasCSS) {
      data.hasCSS = !!addStyleSheet(ownerDocument,
        // corrects block display not defined in IE6/7/8/9
        'myTag,article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}' +
        // adds styling not present in IE6/7/8/9
        'mark{background:#FF0;color:#000}'
      );

在这里:

var html5 = {

       'elements': options.elements || 'myTag abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video',

这个答案可以解决你的其他一些问题