首先,我的意思是HTML中的一个元素的开始标记早于第二个元素的开始标记.
2个元素可以是完全随机的,可以是兄弟姐妹,或者可以是另一个元素的上升或后代.所以解决方案应该是一个带有2个随机DOM元素的函数,并检查哪个是DOM层次结构中的第一个.
你可以Node.compareDocumentPosition()
用来做那件事
var node1 = document.getElementById('test1');
var node2 = document.getElementById('test2');
if ( node1.compareDocumentPosition(node2) & Node.DOCUMENT_POSITION_FOLLOWING ) {
// node 1 comes before node2
} else {
// node 2 comes before node1
}