2

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

HTML

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

jQuery

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

3 回答 3

3

选择它的父级然后找到弹出窗口:

$('div.box select').focus(function (){
  $(this).parent('.box').find('.popup').css('display','block');
});
于 2012-10-01T15:01:58.937 回答
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");
});
于 2012-10-01T15:01:41.733 回答
0

试试这个

$('div.box select').focus(function (){
 $(this).closest('div').find('.popup').show();
});
于 2012-10-01T15:13:03.590 回答