我'已经:
for(var k=0;k<10;k++){
$(eleid).after('<li class="pgs_li_cls" id="stpli_'+k+'" data-pos="'+k+'"><input type="button" value="'+k+'" class="stkpgmb" id="stkpgid_'+k+'" onclick="func_is(this);"></li>');
}
function func_is(ele){
var max = 0, min=0;
$('.pgs_li_cls').each(function() {
max = Math.max($(this).attr("data-pos"), max);
min = Math.min($(this).attr("data-pos"), min);
});
var an_id = ele.id;
an_id = an_id.substr(0, an_id.length-1);
$('#stpli_'+min).remove();
console.log(max+" "+min);
}
正如您所看到的,我创建了包含按钮10次的li
,并且单击了按钮,调用了函数func_is()
,那么当点击按钮时它会检索到最低li
的{{1}}并将其删除。
问题在于,第一次单击按钮时,它会将最小结果设为data-pos
,最大结果为0
,这很好,然后删除{{1}最少10
。
但是当我点击另一个按钮时,li
值仍为0,因为即使已删除data-pos
,它仍然为1(在我的浏览器中,在第一次点击后检查无法找到min
data-pos 0)。
我真的很感激有人告诉我我做错了什么:)
答案 0 :(得分:1)
这是因为您在func_is
函数中将min值初始化为0。
尝试将其设置为更大的值
function func_is(ele){
var max = 0, min= 1000;