我需要使用1.3.2库,遗憾的是它不支持最后的功能。这导致我的功能失败:
$op.last().next().after($op);
“$ op.last不是函数”
演示:
我在纯js中重写此功能是不成功的,有什么建议吗?注意,我还需要.first(),但我假设我能够从.last备用代码中推断出它。非常感谢 -
答案 0 :(得分:11)
您可以使用自1.0以来存在的:last
选择器:
$op.filter(':last')
答案 1 :(得分:5)
要获取最后一个元素,请执行以下操作:
$op.slice( -1 )
现场演示: http://jsfiddle.net/uscyH/4/
jQuery
.slice()
方法在JavaScript .slice()之后被模式化 数组的方法。它模仿的一个特点就是能力 将负数作为start
或end
传递 参数。如果提供负数,则表示位置 从集合的结尾开始,而不是从开始。
来源:http://api.jquery.com/slice/
要获得第一个元素:
$op.eq( 0 )
答案 2 :(得分:1)
假设$op
是选项集合,请使用以下方法获取集合中的第一个DOM元素:
var first = $op[0];
和最后一次使用:
var last = $op[$op.length-1];
答案 3 :(得分:1)
看起来您可以使用此方法找到最后一个或第一个项目 http://jsfiddle.net/uscyH/3/
alert("Last is: "+$("option:last").html()+" and first is: "+$("option:first").html());
更新:您现在有很多想法可供选择。随意使用您想要的任何方法。这种方法可能不是最快的方法,因为它正在执行两个DOM查询,而不是在您已经看起来存储在数组中的列表上运行。很高兴看到jQuery如何在这些版本中如此强大。感谢大家的想法!
答案 4 :(得分:0)
$($op[$op.length-1]).next().after($op);
您也可以选择扩展jquery并创建自己的最后一个方法。