在div中,具有具有attribute的元素(不一定是第二代)move_id
。
首先,想要获取set的第一个和最后一个元素的最直接方法
尝试通过以下方式获得第一个和最后一个:
var first = div.querySelector('[move_id]:first');
var last = div.querySelector('[move_id]:last');
之所以炸弹,是因为:first和:last是我的一厢情愿(?)
无法使用Array方法,querySelectorAll
因为NodeList
它不是Array:
var first = (div.querySelectorAll('[move_id]'))[0];
var last = (div.querySelectorAll('[move_id'])).pop();
这个炸弹因为NodeList
没有方法pop()
(是的,可以在NodeList顶部使用Array方法:
var first = div.querySelector('[move_id]');
var last = Array.prototype.pop.call(div.querySelectorAll('[move_id']));
这有效,并且是我现在正在使用的功能,但我认为我必须更直接地缺少一些东西)
其次,需要验证元素是否按照http://en.wikipedia.org/wiki/Tree_traversal按预售深度优先遍历列出