Javascript jQuery限制选择器到它';父母

Javascript jQuery限制选择器到它';父母,javascript,jquery,jquery-ui,jquery-selectors,Javascript,Jquery,Jquery Ui,Jquery Selectors,我正在尝试为jQuery创建上下文菜单,我正在使用jQueryUI对话框并修改 它适合我的需要: var menu = $(this); menu.dialog('option', 'position', [jsEvent.clientX, jsEvent.clientY]); menu.unbind('dialogopen'); menu.bind('dialogopen', function(event, ui) { $('.ui-dialog-titleb

我正在尝试为jQuery创建上下文菜单,我正在使用jQueryUI对话框并修改 它适合我的需要:

var menu = $(this);
menu.dialog('option', 'position', [jsEvent.clientX, jsEvent.clientY]);
    menu.unbind('dialogopen');
    menu.bind('dialogopen', function(event, ui) {

        $('.ui-dialog-titlebar').hide();
        $('.ui-widget-overlay').unbind('click');
        $('.ui-widget-overlay').css('opacity', 0);
        $('.ui-widget-overlay').click(function() {
            menu.dialog('close');
        });
    });
    menu.dialog('open');
现在,这只在没有使用
.UI对话框标题栏的UI时有效,因为当上下文菜单触发时,它们将消失

我想这样做:

var id = '#'+$(this).attr('id');
并仅在“我的菜单”中选择元素

$(id+' .ui-dialog-titlebar').hide();
但它似乎不起作用,
.ui对话框标题栏仍然存在

如何仅选择菜单中的元素

$('.ui-dialog-titlebart', this).hide()
$(“您想要的项”,此选项)仅当该项是当前元素的子项时,才是选择该项的快捷方式


$(“您想要的项目”,这是仅当项目是当前元素的子元素时才选择该项目的快捷方式。

要在另一个元素中查找具有特定类的所有元素,可以使用
find()

如果要隐藏除
UL
元素之外的具有特定类的所有元素:

$('.ui-dialog-titlebar').not('ul').hide();
或者只针对
LI
元素

$('li.ui-dialog-titlebar').hide();

要在另一个元素中查找具有特定类的所有元素,可以使用
find()

如果要隐藏除
UL
元素之外的具有特定类的所有元素:

$('.ui-dialog-titlebar').not('ul').hide();
或者只针对
LI
元素

$('li.ui-dialog-titlebar').hide();
你可以这样试试

var menu = $(this);
$(menu).find('.ui-dialog-titlebar').hide();
你可以参考。如果需要..

您可以这样尝试

var menu = $(this);
$(menu).find('.ui-dialog-titlebar').hide();

你可以参考。如果需要..

美元(“.ui对话框标题栏”,this)和美元(“.ui对话框标题栏”)之间是否存在差异。查找(“.ui对话框标题栏”)?就性能而言,$('.ui对话框标题栏',this)和$(this.find('.ui对话框标题栏')之间有区别吗?性能方面……我使用了$(this.find('.ui对话框标题栏').hide();它不起作用,看起来对话框是在绑定事件触发之前打开的,有没有办法解决这个问题?我使用了$(this.find('.ui dialog titlebar').hide();它不起作用,看起来对话框是在绑定事件触发之前打开的,有没有办法解决这个问题?