相关疑难解决方法(0)

使用jQuery在特定元素之后查找元素

使用jQuery选择器,如何div在另一个特定元素之后立即查找元素?(不是兄弟姐妹,next()在这种情况下无法帮助)

jquery selector

11
推荐指数
1
解决办法
2万
查看次数

jQuery选择器,用于查找与选择器匹配的给定元素之后的第一个元素

假设我有这个HTML:

 <textarea>blah</textarea>
 <br>
 <div class="select_this">hello!</div>
Run Code Online (Sandbox Code Playgroud)

当我已经识别出textarea时,如何选择带有"select_this"类的DIV?我不想在整个文档上使用类选择器,因为我正在使用大型文档,并且在旧版浏览器中类查找速度很慢.

jQuery .next()似乎没有做到这一点,nearest()只查找DOM树,而.nextUntil()限定了我需要的一切,除了"select_this"div.还有其他选择吗?

html javascript jquery

11
推荐指数
1
解决办法
9042
查看次数

是DOM中另一个元素之前或之后的元素

有没有办法检测元素是否出现在标记中的另一个元素之前或之后?这与DOM中的位置无关.它可以是孩子,兄弟姐妹,父母或父母的父母.这是一个普遍的问题,所以没有标记要分享.

澄清 - 这是关于元素在标记中的位置,而不是它的显示位置.现在我想到了我的问题有点奇怪,因为如果你有元素X和元素Y那么你可以有这些场景.

//in regards to y
<x />
<y /> //:after

<y /> //:before
<x />

<x><y /></x> //not really before or after is it?
Run Code Online (Sandbox Code Playgroud)

javascript jquery

10
推荐指数
2
解决办法
3995
查看次数

jQuery选择.逐个查找元素

<li>
  <select id="foo"></select>
</li>
<li>
  <select id="bar"></select>
</li>
<li>
  <select id="baz"></select>
</li>

var select_after = function(src){
   //How get all select elements after the one specified as argument ?
}
Run Code Online (Sandbox Code Playgroud)

怎么写这个方法?

select_after($("#foo")) 
Run Code Online (Sandbox Code Playgroud)

应返回数组中的#bar和#baz元素

select_after($("#bar"))
Run Code Online (Sandbox Code Playgroud)

应该在数组中返回#baz元素

select_after($("#baz")) 
Run Code Online (Sandbox Code Playgroud)

应该返回空数组

我应该怎么写这个方法?

html jquery jquery-selectors

4
推荐指数
1
解决办法
3813
查看次数

有没有理由在'.class'上使用选择器'*.class'?

我在代码中找到了它,并且不知道使用*.class选择器选择器有什么意义.class.

jquery jquery-selectors

3
推荐指数
1
解决办法
247
查看次数

查找 DOM 中稍后出现的下一个元素

在 javascript 中可能更好,但这肯定可以包括 jQuery 或任何此类库。

我想.next在下面的例子中找到第一个。

有很多类似问题的答案暗示nextAllsiblings......两者在这里都没用:

$(function(){
  $('.result').text(
    $('.origin').nextAll('.next').text()
      || $('.origin').siblings('.next').text()
      || 'both failed'
  )
})
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id="whatever">
  <p class="result"></p>
  <p class="origin">1</p>
</div>
<p class="next">2</p>
<p class="next">3</p>
Run Code Online (Sandbox Code Playgroud)

此外,什么是最兼容(浏览器和库明智)和最高效(速度和更少的代码行)的方式来做到这一点?

javascript performance jquery

2
推荐指数
1
解决办法
392
查看次数