[英]How to have a click event function start with the last child element and then work it's way up?
[英]How can I bind a click event to the last child if the last child element changes?
假设我们正在创建一个待办事项列表,每当单击最后一个列表项时,如何添加新的列表项。 在下面的示例代码中,第四个列表项保留click事件,但我希望每次都在最后一个列表项中。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.js" type="text/javascript"></script>
<ul id="foo">
<li><input placeholder="One"></input></li>
<li><input placeholder="Two"></input></li>
<li><input placeholder="Three"></input></li>
<li><input placeholder="Click Me Add More"></input></li>
</ul>
<script>
$('#foo li:last-child').bind( "click", function(){
var li = $(this).clone();
$('#foo').append(li);
})
</script>
对于jQuery 1.7+,请使用以下命令:
$('#foo').on( "click","li:last-child", function(){
var li = $(this).off('click').clone();
$('#foo').append(li);
})
尝试这个
$('#foo li:last-child').bind( "click", function(){
var li = $(this).clone(true);
$('#foo li:last-child').unbind( "click");
$('#foo').append(li);
})
而是使用.on()
和.on()
.off()
$('#foo li:last-child').on( "click", function(){
var li = $(this).clone(true);
$('#foo li:last-child').off( "click");
$('#foo').append(li);
})
我正在尝试绑定而不是实时
$('#foo li:last-child').live( "click", function(){
var li = $(this).clone();
$('#foo').append(li);
})
试试这个: http : //jsfiddle.net/xu4wc/
$('#foo').on( "click","input:last-child", function(){
var li = $(this).parent().clone();
$('#foo').append(li);
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.