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>
最佳答案
请参阅以下链接:
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',
这个答案可能会解决您的其他问题