Javascript Jquery在insertBefore()和;插入符()

Javascript Jquery在insertBefore()和;插入符(),javascript,jquery,Javascript,Jquery,我可能不是第一个注意到当使用insertBefore和insertAfter时,这些方法需要不同的语法。我希望有人能解释原因 以下是我的(功能!)代码: 创建复选框列表的HTML/PHP循环(如果相关): $field 由于缺乏相似性,使Jquery功能化是一件痛苦的事情 实际上,并且在jQuery中具有相同的签名。虽然您使用的是纯js,它不是jQuery函数。的语法非常相似,但问题是您使用的是本机DOM,它的参数顺序不同。 /* change the order of form eleme

我可能不是第一个注意到当使用insertBefore和insertAfter时,这些方法需要不同的语法。我希望有人能解释原因

以下是我的(功能!)代码:

创建复选框列表的HTML/PHP循环(如果相关):


$field
由于缺乏相似性,使Jquery功能化是一件痛苦的事情

实际上,并且在jQuery中具有相同的签名。虽然您使用的是纯js,它不是jQuery函数。

的语法非常相似,但问题是您使用的是本机DOM,它的参数顺序不同。
/* change the order of form elements */
function sendup(row) {

// needs to move two up.  Step up to the containing span MT
var prevRow = $(row).prevAll('#checkboxSelect').first().get(0);

    if(prevRow) {
        row.parentNode.insertBefore(row, prevRow);
    }
}

function senddown(row) {
$('#checkboxSelect').insertAfter()
// Step up to the containing span MT
var nextRow = $(row).nextAll('#checkboxSelect').first().get(0);

    if(nextRow) {
        $( row ).insertAfter( nextRow );
    }
}
<span id="checkboxSelect">
<input type="checkbox" name="field_group[]" id="$field" value="$field">$field<span style="float:right;"><a onclick="sendup(this.parentNode.parentNode)"><img src="icon_uparrow.png"></a>&nbsp;<a onclick="senddown(this.parentNode.parentNode)"><img src="icon_downarrow.png" border="0"></a></span><br>
</span>