(我现在试着让这个问题变得简单,因为我真的不知道怎么做。)
我必须通过
更改html文件中的无序列表元素 1。)在javascript中为每个新的<li>
创建一个DOM片段。
2。)删除ul。
中的原始批次<li>
3.。)将每个新的DOM片段附加到ul
中 4.。)让每个新的<li>
元素再次点击
单击<li>
元素将删除ul的内容并将其替换为新批处理
(批次从0 <li>
到6 <li>
元素不等(取决于您点击的元素))
我遇到的第一个问题是没有办法一次创建多个可点击的元素(因为循环不起作用)所以此刻我只是重复我的功能。
$( "#choices" ).children().eq(0).click(function() {
selectChoice(allChoices, $( "#choices" ).children().eq(0).text());
});
$( "#choices" ).children().eq(1).click(function() {
selectChoice(allChoices, $( "#choices" ).children().eq(1).text());
});
// more li elements to make clickable
其次,当你删除一个li元素并放回一个新元素时,你必须使它可以点击,但由于你不知道元素的数量和for循环不起作用,我不能添加一个函数创建。并非所有元素也遵循相同的格式,因此只需修改现有的li就不是一个选项。
是否有一种简单的方法让我不知道我做了什么呢?
答案 0 :(得分:0)
你正在使用jQuery,对吧?
查看on
方法。你应该可以做类似
$('#choices').on('click', 'li', function(ev) {
... do your thing ...
});
在li
下添加新#choices
时,此事件绑定将自动添加到新li
。 http://api.jquery.com/on/