Javascript jQuery.nextUntil()等价物
我需要jQuery的Javascript jQuery.nextUntil()等价物,javascript,jquery,Javascript,Jquery,我需要jQuery的.nextUntil()的替代方案。我目前正在使用jQuery 1.3.1,不可能对其进行更新:( 我有这个HTML: <h4>...</h4> <p>...</p> <p>...</p> <p>...</p> <h4>...</h4> <p>...</p> <p>...</p> 但是.nextUntil()
.nextUntil()
的替代方案。我目前正在使用jQuery 1.3.1
,不可能对其进行更新:(
我有这个HTML:
<h4>...</h4>
<p>...</p>
<p>...</p>
<p>...</p>
<h4>...</h4>
<p>...</p>
<p>...</p>
但是
.nextUntil()
是在1.4.0
中添加的,那么您知道如何在1.3.1
中实现这一点吗?未测试,但类似于以下内容:
function nextUntil($start, until)
{
var matches = [];
for (var e = $start.next(); e.length !== 0 && !e.is(until); e = e.next())
{
matches.push(e);
}
return $(matches);
}
或者使用nextAll()
:
未测试,但类似于以下内容:
function nextUntil($start, until)
{
var matches = [];
for (var e = $start.next(); e.length !== 0 && !e.is(until); e = e.next())
{
matches.push(e);
}
return $(matches);
}
或者使用nextAll()
:
未测试。由@ingo:)测试
没有测试。由@ingo:)测试。我就是这样做的
$('h4').click(function(){
$n = $(this).next();
while($n.is('h4') == false) {
$n.toggle();
$n = $n.next();
}
});
我是这样做的
$('h4').click(function(){
$n = $(this).next();
while($n.is('h4') == false) {
$n.toggle();
$n = $n.next();
}
});
您可以通过使用和一起模拟的行为:
var $nextAll = $(this).nextAll();
$nextAll.slice(0, $nextAll.index("h4")).toggle();
您可以通过使用和一起模拟的行为:
var $nextAll = $(this).nextAll();
$nextAll.slice(0, $nextAll.index("h4")).toggle();
如果有人仍然需要使用jQuery 1.3:有,它被添加到jQuery
1.4.0
:
jQuery Untils提供了三种非常简单但非常有用的方法:nextUntil、prevUntil和parentsUntil。这些方法基于它们的nextAll、prevAll和parents对应项,只是它们允许您在到达某个选择器时停止。元素以“遍历顺序”返回
在Internet Explorer 6-8、Firefox 2-3.7、Safari 3-4、Chrome 4-5、Opera 9.6-10.1中使用jQuery 1.3.2进行测试
如果有人仍然需要使用jQuery 1.3:有,它被添加到jQuery
1.4.0
:
jQuery Untils提供了三种非常简单但非常有用的方法:nextUntil、prevUntil和parentsUntil。这些方法基于它们的nextAll、prevAll和parents对应项,只是它们允许您在到达某个选择器时停止。元素以“遍历顺序”返回
在Internet Explorer 6-8、Firefox 2-3.7、Safari 3-4、Chrome 4-5、Opera 9.6-10.1中使用jQuery 1.3.2进行测试
看看这是否有助于使用带条件语句的循环。@Bala R我看到了taht,但它仍然使用
.nextUntil()
您可以同时运行两个版本的jQuery。。您将保持与现有内容的兼容性,并且仍然能够使用较新的功能。@jnpcl我知道这一点,但我认为这不是一个好的解决方案:)看看这是否有助于使用带条件语句的循环。@Bala R我看到了taht,但它仍然使用.nextUntil()
您可以同时运行两个版本的jQuery。。您将保持现有内容的兼容性,并且仍然能够使用更新的功能。@jnpcl我知道,但我认为这不是一个好的解决方案:)