在Javascript中测试时,如何使html属性顺序保持一致
我有一个组件,可以在innerHTML中创建一组如下所示的文本:在Javascript中测试时,如何使html属性顺序保持一致,javascript,html,xml,xhtml,yui,Javascript,Html,Xml,Xhtml,Yui,我有一个组件,可以在innerHTML中创建一组如下所示的文本: fourty two<br><br><input value="Select" type="button"> 四十二 设置innerHTML后,浏览器有时会解析此文本,生成: 四十二个 这种行为似乎依赖于浏览器,因为我可以让我的测试在FFx中运行,然后它们会在safari中失败,因为属性的顺序 有没有一种方法可以将HTML解析成类似DOM的形式,然后在比较之前将其打印出来,这样我就可以期望H
fourty two<br><br><input value="Select" type="button">
四十二
设置innerHTML后,浏览器有时会解析此文本,生成:
四十二个
这种行为似乎依赖于浏览器,因为我可以让我的测试在FFx中运行,然后它们会在safari中失败,因为属性的顺序
有没有一种方法可以将HTML解析成类似DOM的形式,然后在比较之前将其打印出来,这样我就可以期望HTML属性的顺序是一致的?HTML元素中的属性是无序的,即:顺序是不相关的。如果您的测试采用了特定的顺序,那么他们确实做错了。HTML元素中的属性是无序的,即:顺序是不相关的。如果您的测试采用了特定的顺序,那么它们确实做错了。正是出于这个原因,我不得不为HTML编写自己的规范化函数。正是因为这个原因,我不得不为HTML编写自己的规范化函数。见+1。如果OP的测试在属性顺序不同时中断,那么测试本身也会中断,因为它们依赖于未指定的行为;DOM规范明确声明属性没有任何特定顺序。+1。如果OP的测试在属性顺序不同时中断,那么测试本身也会中断,因为它们依赖于未指定的行为;DOM规范明确声明属性不按任何特定顺序排列。