选择上面的DIV,但不在内

时间:2012-10-01 15:00:02

标签: jquery selector

选择器/横向有问题。基本上,我希望当用户点击选择时弹出窗口打开。由于使用了较大的程序,我需要使用这种结构,所以我只是在寻找合适的选择器。

HTML

<div class="box">
 <div class="popup"></div>
 <select></select>
</div>

的jQuery

$('div.box select').focus(function (){
 $(this).closest('div').next().css('display','block');
});

3 个答案:

答案 0 :(得分:3)

选择其父级,然后找到弹出窗口:

$('div.box select').focus(function (){
  $(this).parent('.box').find('.popup').css('display','block');
});

答案 1 :(得分:2)

您可以使用prev()方法。它将返回匹配元素的前一个兄弟:

$("div.box select").focus(function() {
    $(this).prev().css("display", "block");
});

编辑:如果您的标记结构有所不同,并希望与popup类匹配,请改用prevAll()

$("div.box select").focus(function() {
    $(this).prevAll(".popup").css("display", "block");
});

答案 2 :(得分:0)

试试这个

$('div.box select').focus(function (){
 $(this).closest('div').find('.popup').show();
});