Jquery - контекстное меню - щелчок правой кнопкой мыши - PullRequest
0 голосов
/ 14 сентября 2011

Я использую плагин для jquery - ContextMenu.- http://abeautifulsite.net/blog/2008/09/jquery-context-menu-plugin/

У меня есть div в центре страницы.У меня есть фоновое изображение в точках.Мне это нужно только с помощью jquery правой кнопкой мыши на фоновое изображение.Если вы нажмете на фоновое изображение, я хочу отобразить ContextMenu.Если щелкнуть элемент div с идентификатором divPage, ничего не произойдет.

Спасибо за совет или, возможно, другое решение.

HTML

<body>
<form id="formBackground" method="post">
<ul id="myMenu" class="contextMenu">
                    <li class="insert"><a href="#insert">Add New</a></li>       
                    <li class="edit"><a href="#edit">Edit</a></li>                  
                    <li class="delete"><a href="#delete">Delete</a></li>            
                </ul>

    <div id="divPage">
Text.
    </div>
</form>

CSS

body, html {
height: 100%;
}

body{
padding: 0px;
margin: 0px;
font-family: Arial, Verdana, Helvetica, sans-serif;
font-size: 12px;
color: white;
background-image: url('../images/backgrounds/bg.jpg');
background-repeat:no-repeat;
background-position:top;
}

div#divPage{
width: 800px;
height: 300px;
margin: auto;
}

JS

$('body').bind('mousedown', function (evt) {

                switch (evt.which) {       
            case 3:
            if(evt.target == $('body')[0]) {
                //Show context menu
            }
            break;
    }                

            });

Ответы [ 2 ]

0 голосов
/ 14 сентября 2011

Я думаю, вы слишком усложняете вещи.

Во-первых, я не вижу ваш List в вашем коде, который создает контекстное меню.

Во-вторых, все, что вам нужно сделать, это:

$("idOfTheObjectYouWantToHaveAMenuOn").contextMenu({menu:"yourList"});
0 голосов
/ 14 сентября 2011

почему бы не позволить контекстному меню всплыть при нажатии на сам div?если вам нужно открыть меню только нажатием на изображение bg, вам нужно поместить изображение в сам div и стилизовать его так, чтобы оно действовало как изображение bgВы можете сделать это с помощью css z-index и абсолютного положения

...