jquery中$('element,#id')和$('element','#id')之间的区别是什么

时间:2015-05-21 14:38:29

标签: jquery jquery-selectors

我知道 $('element,#id')选择所有元素&的 #ID 即可。 但是做什么 $('element','#id')! 我只知道他们不相似。那有什么区别?

1 个答案:

答案 0 :(得分:1)

$('element, #id') - 它是multiple selector,其中将选择具有给定标记名和具有给定ID的元素的所有元素

$('span, #myid').addClass('myclass');//all spans and the myid element is selected
.myclass {
  border: 1px solid red;
  margin: 2px;
  padding: 3px;
}
#myid.myclass {
  border-color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<span>1</span>
<p>
  <span>2</span>
</p>
<div id="myid">
  <span>3</span>
</div>

$('element', '#id') - 是context based搜索,即它会找到给定tagName的所有元素,这些元素是具有给定ID的元素的后代

$('span', '#myid').addClass('myclass'); //only span elements under myid is selected
.myclass {
  border: 1px solid red;
  margin: 2px;
  padding: 3px;
}
#myid.myclass {
  border-color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<span>1</span>
<p>
  <span>2</span>
</p>
<div id="myid">
  <span>3</span>
</div>