正确使用jQuery来选择每个最近的部分,以及一些关于语义的部分

时间:2013-06-16 15:23:35

标签: jquery html jquery-selectors semantic-markup

我目前正在进行投资组合概述,客户希望每行下方都有一个可滑动(切换声明)部分。该部分稍后将填充一些 ajaxed 内容,具体取决于点击的链接。

问题是,jQuery的closest() - 选择器不起作用(错误当然不是jQuery的核心,而不是我的方法:P)。

目前我使用的是jQuery的next - 选择器,但这只适用于每个第4个 a标记 。我正在研究jsfiddle以进行原型设计: http://fiddle.jshell.net/k79kf/1/

任何想法是什么问题?


另一件事是我所做的语义正确性。实际我有一些a - 节点来切换每行下面的部分,其中有四个:

a a a a
section
a a a a
section
a a a a
section
...

但是,我认为这不是“正确”的方式,或者?也许是一个有序列表是更好的选择,但在哪里放置可滑动部分。或section而不是aarticle而不是section

1 个答案:

答案 0 :(得分:1)

closest()选择最近的祖先

next()仅选择下一个兄弟。

您想要.nextAll('section').first()


更加语义的方法是将每个四人组包装在一个容器元素中,然后编写$(this).parent().children('section')

或者,为每个部分指定一个ID,使a指向该ID(<a href="#section1">),然后写下$(this.id)
使用这种方法,您甚至可以使用section:target CSS选择器完全消除Javascript。