我想用jQuery选择它在我启动此事件的元素之前具有pu
类的最后一个元素,因为我知道在当前有这个类之前和之后有很多元素
以下是一个例子:
<div class="pu" ></div>
<div class="pu" ></div>
<div class="pu" ></div>
<div class="current" ondragenter="myfunction();" ></div>
<div class="pu" ></div>
<div class="pu" ></div>
对于此示例,我想在启动pu
的情况下选择具有当前类的div之前具有ondragenter
类的最后一个元素。
我有这种情况,因为div
是从服务器端生成的
我怎样才能做到这一点?
谢谢!
答案 0 :(得分:3)
即使您current
的前一个元素没有pu
类,也会进行选择。
<强> http://jsfiddle.net/2Vunz/ 强>
$('div.current').prevAll('div.pu:first');
这将照顾任何包装。
<强> http://jsfiddle.net/S2LfA/ 强>
$('input.current').parent().prevAll().find('input.pu').eq(0)
答案 1 :(得分:2)
以下jQuery行将根据选择器div.current
选择div.pu
的前一个兄弟元素:
$('div.current').prevAll('div.pu:first');
“以前的兄弟元素”和该选择符表示这将在pu
类div
之前获得current
类div
,假设它们是相同的您的示例中的DOM级别。
答案 2 :(得分:-2)
试试这段代码:
$('div.pu:last')