关于jquery的问题: prev + next、prev ~ siblings有何不同?

 我来答
江城Spring
2013-11-27 · TA获得超过1202个赞
知道小有建树答主
回答量:763
采纳率:0%
帮助的人:347万
展开全部

你好,他们的差别是:

prev + next

  匹配所有紧接在 prev
元素后的 next 元素

如:HTML

<form>
  <label>Name:</label>
  <input name="name" />
  <fieldset>
      <label>Newsletter:</label>
      <input name="newsletter" />
 </fieldset>
</form>
<input name="none" />

Jquery:
$("label + input")

结果:[ <input name="name" />, <input name="newsletter" /> ]

而 prev ~ siblings则是匹配 prev 元素之后的所有siblings 元素,就是同辈元素。

如:HTML
<form>
  <label>Name:</label>
  <input name="name" />
  <fieldset>
      <label>Newsletter:</label>
      <input name="newsletter" />
 </fieldset>
</form>
<input name="none" />

jQuery:
$("form ~ input")

结果:[ <input name="none" /> ]

希望对您有帮助。
更多追问追答
追问
手册上摘抄的例子有什么用?如果手册我能看得懂我会来这里提问吗。
追答
这些例子还看不懂吗?这不很好的说明他们的区别了嘛。你自己多写几个例子自己感受就知道了,别人再怎么说你也感受不到。所以,Jquery就得一个一个方法的自己练。
zhaoapk
2013-11-27 · TA获得超过3771个赞
知道大有可为答主
回答量:1343
采纳率:40%
帮助的人:1581万
展开全部

这个是css选择器。

如果你了解了css里+和~是什么意思的话,jquery里也是一个意思。

<style>
/* 紧接着div的p */
div + p {
    background: blue;
}
</style>
<div>div</div>
<p>我是蓝的, 因为我紧接着div</p>
<p>我不是蓝的, 因为我上面是p</p>
<style>
/* p的上面有div */
div ~ p {
    background: blue;
}
</style>
<div>div</div>
<strong>我是strong</strong>
<p>我是红的, 因为我上面有div</p>
<p>我是红的, 因为我上面有div</p>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式