1

我有非标元素

<testele></testele>

在除 IE 之外的所有浏览器中,这段 JavaScript 都会成功改变上述元素的内容

document.getElementsByTagName("testele")[0].innerHTML = 'hi';

但是,如果我将 更改<testele>为仅 a <span>(在 HTML 和 JavaScript 中),它现在可以成功更改每个浏览器中元素的内容,包括 IE。

有什么解决办法吗?我四处寻找并尝试了一堆无济于事。

4

2 回答 2

1

看看innerShiv,一个旨在解决这个问题的 Javascript 插件。

于 2011-06-23T19:11:44.627 回答
1

document.createElement("testele")在渲染之前使用。必须在文档遇到 a 之前包含此脚本<testele>

http://jsfiddle.net/gilly3/LjwbA/

document.createElement("testele");
window.onload = function() {
    document.getElementsByTagName("testele")[0].innerHTML = 'hi';
};

document.createElement("testele")如果您在浏览器解析a 之后尝试执行此操作,<testele>则为时已晚。

于 2011-06-24T00:01:39.440 回答