3

我想在我的 html 页面中使用自定义标签并使用 jquery 来读取其中的文本,例如:

<desc>Hello world</desc>

然后使用 jquery 我阅读了文本:

desc_text=$("desc").first().text();

在 Firefox 和 Chrome 上,它可以工作,我得到了“Hello world”,但在 Internet Explorer (IE 9) 上没有。

经过调试,问题似乎来自 IE :<desc>并且</desc>被视为两个不同的 DOM 节点。Hello world不是 的子节点<desc>。这就是它不起作用的原因。如果我使用span标签而不是desc标签:它可以工作。

有没有办法让它在 IE 上运行,或者 IE 不会像 firefox / Chrome 那样解释我的自定义标签是否正常?

4

2 回答 2

3

只需在文档的开头添加

<script>document.createElement('desc');</script>

这也是HTML5shiv使 IE<9 能够正确解析新的 HTML5 元素的基本思想(无论如何请注意,您将无法通过 javascript 将该元素动态地注入 DOM)

于 2012-07-03T14:31:28.243 回答
1

http://ajaxian.com/archives/adding-custom-tags-to-internet-explorer-the-official-way

于 2012-07-03T14:31:01.260 回答