我正在使用Selenium进行自动化测试,以获得复杂的企业级Web应用程序,但我遇到了一些问题。
程序员似乎没有优先考虑标准HTML。页面完全不符合要求。我目前的问题是几个元素共享相同的id
值,这显然不是一件好事。我不允许改变它,反正我认为我不想。
当许多元素具有相同的ID时会发生什么?流行的浏览器如何处理?我特别询问document.getElementById
:哪一个被退回?
答案 0 :(得分:1)
除非我不知道document.getElementId
内部有什么内容,否则我会期望它返回它遇到的第一个元素。 (见这个小提琴:http://jsfiddle.net/rrTra/)
虽然浏览器行为可能会有所不同,但我相信大多数人会忽略其他条目而不报告错误。
修改强>
找到此链接:http://reference.sitepoint.com/javascript/Document/getElementById
当多个元素共享相同时 ID
此方法的行为何时 指定的多个元素 ID存在不标准化,因为 不允许包含文档 不止一个元素具有相同的元素 ID。但在此参考 所有浏览器返回的情况 找到第一个元素。
答案 1 :(得分:1)
document.getElementById
返回id为
在FF,IE,Chrome,Safari和&戏