gpt4 book ai didi

javascript - 为什么我不能向上或向下移动 "append data"?

转载 作者:太空宇宙 更新时间:2023-11-03 23:12:59 25 4
gpt4 key购买 nike

$(document).ready(function () {
var $selected = $();
var $itemLv1 = $("#cList [class^=lv]");
$itemLv1.on('click', function (e) {
$selected = $(this);
var x = $(this).toggleClass('clicked');
$("[class^=lv]").not(x).removeClass("clicked child").addClass("child");
// x.siblings().removeClass('clicked');
e.stopPropagation();
});
$("#moveUp").on('click', function () {
$selected.insertBefore($selected.prev("[class^=lv]"));
});
$("#moveDown").on('click', function () {
$selected.insertAfter($selected.next("[class^=lv]"));
});
var cList = document.getElementById("cList");
var divLv1 = document.createElement("div");
divLv1.className = 'lv1';
var content = document.createTextNode("This is a test");
divLv1.appendChild(content);
cList.appendChild(divLv1);
});
.clicked{
color: red !important;
}
.child{
color:black;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button type="button" id="moveUp">Up </button> /
<button type="button" id="moveDown">Down</button>
<div id="cList">
<div class="lv1">AAAAAA</div>
<div class="lv1">BBBBBB</div>
<div class="lv1">CCCCCC</div>
<div class="lv1">DDDDDD</div>
</div>

我可以向上或向下移动原始数据。但是,当我使用 ajax 获取数据并在其下追加具有相同类的数据(“这是测试”)时。

我不能移动它。

我是不是遗漏了什么?

最佳答案

由于元素是动态创建的,因此您需要使用 on()像这样的事件处理程序:

$(document).on('click', '#cList [class^=lv]', function (e) {
$selected = $(this);
var x = $(this).toggleClass('clicked');
$("[class^=lv]").not(x).removeClass("clicked child").addClass("child");
// x.siblings().removeClass('clicked');
e.stopPropagation();
});

关于javascript - 为什么我不能向上或向下移动 "append data"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31892158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com