你好编码员我有以下脚本:http: //jsfiddle.net/UqDJk/241/
我希望 moveUp 函数将列表上移一位..
var moveUp = function (up, direction) {
var btn = up.target,
li = btn.parentNode;
li.insertBefore(li[1].nextSibling)
}
有没有一种简单的方法可以做到这一点?ps请纯javascript。
你好编码员我有以下脚本:http: //jsfiddle.net/UqDJk/241/
我希望 moveUp 函数将列表上移一位..
var moveUp = function (up, direction) {
var btn = up.target,
li = btn.parentNode;
li.insertBefore(li[1].nextSibling)
}
有没有一种简单的方法可以做到这一点?ps请纯javascript。
我想你想要:
li.parentNode.insertBefore(li, li.previousSibling);
但请注意,这li.previousSibling
将是null
第一个元素,在这种情况下,它将附加到列表中。所以你必须添加一个检查以避免移动第一个元素:
if (li.previsousSibling) {
li.parentNode.insertBefore(li, li.previousSibling);
}
您的代码中的问题:
mdn insertBefore
.li[1]
尝试访问 的属性1
,li
该属性不存在,因为li
它是一个 DOM 元素对象。