Alex Rivera | Logout

$('html').click()... anywhere except one element

Asked 2012-04-03T11:32:03.760
30

I have a dynamically appended menu which I am removing if you click anywhere on page including the menu links itself. What I am trying to achieve is to prevent the remove if you click a specific link and that simply does not work for me. Unfortunately I cant use the delegate method, if that would help, due to old version on jquery used on client side, no option to update it.

So maybe you could suggest if there is any way to do so. Here is a quick example of mine.

<script>
    $(function() {
        $('.menu').append('<a href="" class="solid">Option</a> <a href="">Option</a> <a href="">Option</a>');           
                
        $('.menu a').live('click',function(){
            return false;
        });         

        $('a.solid').live('click',function(){
            return false;
        });

        $('html').click(function() {                    
            $('.menu').remove();                
        });             
                            
        });
</script>

and the container

<div class="menu"></div>
Edit
Report

1 Answer

9

have you tried this:

$('.menu a').click(function(event){
   event.stopPropagation();
});
answered 2012-04-03T11:36:47.053

Your Answer