为什么这个事件似乎只是点击一些点击而不是其他点击?

时间:2012-02-03 13:47:15

标签: javascript jquery events

我设置了一个click事件,以便在我点击某处时隐藏我的上下文菜单;但是我最近更改了它,以便当我单击带有复选框的上下文菜单时它不会隐藏它。 这是它的代码:

document.observe( 'mouseup', function( event ){ 
    var $j = jQuery.noConflict();
    if(men_con_afisat == 'da' && anulare_ascundere_men_con == ''){
        men_con_afisat = 'nu';
        if($j(event.target).attr('class').indexOf('no_hide')<0)
        {
            alert($j(event.target).attr('class'));

            ascundere_men_con();
        }       
    }   
    else if(sectiune_pagina == 'proiecte'){ 
        perioada_dezactivare_tragere();
        perioada_dezactivare_mutare();  
    }
    else{

    }   

    coordonate_cursor_x = event.clientX;
    coordonate_cursor_y = event.clientY;    
});

理论上,只要我点击的东西在其class属性中没有“no_hide”,它就应该打印我点击的元素的class属性。然而,大部分时间都不会发生这种情况。只有在我显示和隐藏上下文菜单后才会发生这种情况。我改变了函数。

有关我可能做错的事情的任何想法吗?

ascundere_men_con()是隐藏上下文菜单的函数。

1 个答案:

答案 0 :(得分:0)

只有在men_con_afisat == 'da' && anulare_ascundere_men_con == ''时才会这样做,但您发布的代码并未显示设置这些(可能是全局的)变量的位置。