我有一个组件,它在innerHTML中创建了一组这样的文本:
fourty two<br><br><input value="Select" type="button">
设置innerHTML后,浏览器有时会解析此文本,生成:
fourty two<br><br><input type="button" value="Select">
这种行为似乎依赖于浏览器,因为我可以让我的测试在FFx中运行,然后由于属性的顺序,它们将在safari中失败。
有没有办法可以将HTML解析为类似DOM的形式,然后在比较之前将其打印出来,以便我可以期待html属性的一致排序?
答案 0 :(得分:7)
HTML元素中的属性是无序的,即:顺序无关紧要。如果您的测试假设某个特定订单,那么他们确实做错了。
答案 1 :(得分:0)
出于这个原因,我必须为HTML编写自己的规范化函数。见http://code.google.com/p/google-code-prettify/source/browse/trunk/src/prettify.js#556