获取到某个元素后,在后面.方法.方法.方法…
在jQuery中,如果有一个对象调用了一个方法,而且这个方法是设置某个属性的方式调用的,一般调用后返回的都是当前调用该方法的对象,具体的是不是这个对象,最好的方式就是验证一下。
断链:对象调用方法后返回来的不是以前的对象了,那么此时就叫做断链,也就不能再使用链式编程了,如何解决?在断链的位置直接使用end()方法,内部会帮助我们自动的修复断链,找到最开始调用的那个对象。
链式编程的原理:
对象.方法();如果返回来的还是对象,那么可以继续的调用方法。
一个栗子:评价打分
<ul id="start">
<li>☆</li>
<li>☆</li>
<li>☆</li>
<li>☆</li>
<li>☆</li>
</ul>
$('#start>li').mouseenter(function(){
$(this).text('★').prevAll('li').text('★').end().nextAll('li').text('☆');
}).click(function(){
$(this).attr('index',10).siblings('li').removeAttr('index');
}).mouseleave(function(){
$('#start>li').text('☆');
$('#start>li[index=10]').text('★').prevAll('li').text('★');
})