我一直在玩弄这一点。 敛基于指定的类的DOM元素的特定号码。
更新27/11/12:下面的优化版本。
首先,基础知识拿到第一个和最后一个元素,像这样:
var firstSpan = $('span.class:first'),
lastSpan = $('span.class:last');
要获取所有匹配指定类,像这样的内容:
var allSpans = $('span.class').get();
或像这样第n /第x个元素:
var firstSpan = $('span.class').get(0),
secondSpan = $('span.class').get(1);
//etc...
可是如何才能让说出的第10个元素或元素10-20?
这将是很好走是这样的:
var mySpans = $('span.class').get(0,10);
不幸的是,获得()函数不允许传递一个范围,但只是一个单一的指标。 因此,这里是使用了jQuery获得()函数包括一系列元素的一种尝试。
(function($) { //function that gets a range of dom elements against a jQuery selector //returns an array of dom elements $.fn.getRange = function(start,end) { var elems = []; for ( var i = start; i < = end; i++ ) { elems.push(this.get(i)); } return elems; }; //testing console.log($('div').getRange(1,10)); console.log($('div').getRange(10,20)); })(jQuery); [/js] Does anyone know of a better way to achieve this?
Optimised versions Thanks to Vlad, Redky and Daniel. Using slice. [js] var $el = $('div').get().slice(0,10); console.log($el);
使用:GT:LT
console.log($('div:gt(3):lt(6)'));
From: https://www.sitepoint.com//jquery-selector-10-items-specific-class/