Javascript 如何选择从当前开始的第n个下一个数据元素?
我的HTML结构如下:Javascript 如何选择从当前开始的第n个下一个数据元素?,javascript,jquery,html,Javascript,Jquery,Html,我的HTML结构如下: <div data-month="january"></div> <div data-month="february"></div> <div data-month="march"></div> <div data-month="april"></div> $("[data-month='february']").next().next() 但是在div周围有很多HTM
<div data-month="january"></div>
<div data-month="february"></div>
<div data-month="march"></div>
<div data-month="april"></div>
$("[data-month='february']").next().next()
但是在div周围有很多HTML结构
现在,我知道了如何选择数据月,例如:$('[data month=二月])
获取带有div的jQuery对象,该div的数据月为二月
现在,想象一下,我现在已经选择了如上所述的这个二月分区,有没有办法得到‘二月’的第n个邻居(右边的分区n个位置)
我尝试使用该函数,但无法从当前对象开始。(我真的需要从一个特定的数据月开始,不知道前面的索引。)简单!
像这样使用.next()两次:
<div data-month="january"></div>
<div data-month="february"></div>
<div data-month="march"></div>
<div data-month="april"></div>
$("[data-month='february']").next().next()
更多信息
更通用的方法是使用index()
查找当前项的索引,在该索引上添加偏移量,然后使用parent().children().eq()
,如下所示:
var current = $("[data-month='february']");
var other = current.parent().children().eq(current.index() + offset);
简单!
像这样使用.next()两次:
<div data-month="january"></div>
<div data-month="february"></div>
<div data-month="march"></div>
<div data-month="april"></div>
$("[data-month='february']").next().next()
更多信息
更通用的方法是使用index()
查找当前项的索引,在该索引上添加偏移量,然后使用parent().children().eq()
,如下所示:
var current = $("[data-month='february']");
var other = current.parent().children().eq(current.index() + offset);
简单!
像这样使用.next()两次:
<div data-month="january"></div>
<div data-month="february"></div>
<div data-month="march"></div>
<div data-month="april"></div>
$("[data-month='february']").next().next()
更多信息
更通用的方法是使用index()
查找当前项的索引,在该索引上添加偏移量,然后使用parent().children().eq()
,如下所示:
var current = $("[data-month='february']");
var other = current.parent().children().eq(current.index() + offset);
简单!
像这样使用.next()两次:
<div data-month="january"></div>
<div data-month="february"></div>
<div data-month="march"></div>
<div data-month="april"></div>
$("[data-month='february']").next().next()
更多信息
更通用的方法是使用index()
查找当前项的索引,在该索引上添加偏移量,然后使用parent().children().eq()
,如下所示:
var current = $("[data-month='february']");
var other = current.parent().children().eq(current.index() + offset);
更新
试着利用
var current=$(“[数据月=二月]”),collection=“[数据月]”;
所选变量=当前的.slides(集合).filter(函数(i,el){
return$(el).index(collection)==当前.index(collection)+2
});
当前.add(选定).css(“颜色”、“蓝色”)代码>
一月
二月
前进
四月
更新
试着利用
var current=$(“[数据月=二月]”),collection=“[数据月]”;
所选变量=当前的.slides(集合).filter(函数(i,el){
return$(el).index(collection)==当前.index(collection)+2
});
当前.add(选定).css(“颜色”、“蓝色”)代码>
一月
二月
前进
四月
更新
试着利用
var current=$(“[数据月=二月]”),collection=“[数据月]”;
所选变量=当前的.slides(集合).filter(函数(i,el){
return$(el).index(collection)==当前.index(collection)+2
});
当前.add(选定).css(“颜色”、“蓝色”)代码>
一月
二月
前进
四月
更新
试着利用
var current=$(“[数据月=二月]”),collection=“[数据月]”;
所选变量=当前的.slides(集合).filter(函数(i,el){
return$(el).index(collection)==当前.index(collection)+2
});
当前.add(选定).css(“颜色”、“蓝色”)代码>
一月
二月
前进
四月
我创建了一个交互式演示,用于使用第n个孩子
我使用第n个孩子创建了以下代码段,该代码段适用于您的情况:
function UpdateMonthSelection(numberOfMonths){
var指数=$(“[数据月=”二月“])。指数();
var newIndex=index+numberOfMonths+1;//添加了+1,因为第n个子项从1开始计数,而不是从0开始计数。
$(“[data month='二月']”).css('background','red');
$(“[数据月]:第n个子项(“+newIndex+”).css('background','yellow');
}
//特定于下拉选择的代码
$('select')。在('change',function()上{
var selection=$(this.val();
选择=编号(选择);
UpdateMonthSelection(选择);
});代码>
挑选
1.
2.
3.
4.
二月后的几个月
一月
二月
前进
四月
也许
六月
我创建了一个交互式演示程序,用于使用第n个孩子
我使用第n个孩子创建了以下代码段,该代码段适用于您的情况:
function UpdateMonthSelection(numberOfMonths){
var指数=$(“[数据月=”二月“])。指数();
var newIndex=index+numberOfMonths+1;//添加了+1,因为第n个子项从1开始计数,而不是从0开始计数。
$(“[data month='二月']”).css('background','red');
$(“[数据月]:第n个子项(“+newIndex+”).css('background','yellow');
}
//特定于下拉选择的代码
$('select')。在('change',function()上{
var selection=$(this.val();
选择=编号(选择);
UpdateMonthSelection(选择);
});代码>
挑选
1.
2.
3.
4.
二月后的几个月
一月
二月
前进
四月
也许
六月
我创建了一个交互式演示程序,用于使用第n个孩子
我使用第n个孩子创建了以下代码段,该代码段适用于您的情况:
function UpdateMonthSelection(numberOfMonths){
var指数=$(“[数据月=”二月“])。指数();
var newIndex=index+numberOfMonths+1;//添加了+1,因为第n个子项从1开始计数,而不是从0开始计数。
$(“[data month='二月']”).css('background','red');
$(“[数据月]:第n个子项(“+newIndex+”).css('background','yellow');
}
//特定于下拉选择的代码
$('select')。在('change',function()上{
var selection=$(this.val();
选择=编号(选择);
UpdateMonthSelection(选择);
});代码>
挑选
1.
2.
3.
4.
二月后的几个月
一月
二月
前进
四月
也许
六月
我创建了一个交互式演示程序,用于使用第n个孩子
我使用第n个孩子创建了以下代码段,该代码段适用于您的情况:
function UpdateMonthSelection(numberOfMonths){
var指数=$(“[数据月=”二月“])。指数();
var newIndex=index+numberOfMonths+1;//添加了+1,因为第n个子项从1开始计数,而不是从0开始计数。
$(“[data month='二月']”).css('background','red');
$(“[数据月]:第n个子项(“+newIndex+”).css('background','yellow');
}
//特定于下拉选择的代码
$('sel