6

经过数小时的调试,在我看来,在 FireFox 中,DOM 的 innerHTML 反映了标记中的实际内容,但在 IE 中,innerHTML 反映了标记中的内容以及用户或动态所做的任何更改(即通过 Javascript )。

有没有其他人发现这是真的?有什么有趣的解决方法可以确保两者的行为方式相同?

4

4 回答 4

11

我使用 jQuery 的.html()来获得跨浏览器的一致结果。

于 2008-08-31T11:41:34.153 回答
9

我同意帕特的观点。在游戏的这一点上,考虑到可用的 Javascript 框架,编写自己的代码来处理跨浏览器兼容性并没有多大意义。几乎所有口味都有一个框架(有些非常小),他们专注于真正抽象出浏览器之间的所有差异。他们正在做的测试比你可能做的要多得多。

像 jQuery 或 Yahoo 的 YUI(想想一天有多少人使用 Yahoo Javascript 以及浏览器的种类)之类的东西比您或我想出的任何片段都经过了更多的道路测试。

于 2008-08-31T15:28:15.027 回答
2

使用一个好的库是解决浏览器不一致问题的好方法,而 jquery 是我通常推荐的方法 - 如果您在更改表单中的元素时遇到问题,jquery 拥有一些非常有用的插件,专门针对关于表单操作和评估。

于 2008-09-17T08:09:05.767 回答
1

使用原型和 $("thisid") 语法而不是 document.getElementById("thisid") 可能会为您解决问题。它对我有用。

于 2008-09-17T05:31:10.543 回答