右键单击div不会打开contextmenu

时间:2012-04-20 10:31:11

标签: javascript jquery javascript-events

我正在使用contextmenu.js(jQuery上下文菜单插件)在右键单击div时打开上下文菜单。但不知何故,只有默认菜单才会打开。我无法找到确切的问题。

在调试时,它显示右键单击它将上下文菜单附加到div。但是当我右键单击div时,默认菜单会打开。

我知道我提供的信息非常有限,但任何建议和帮助都会很明显。

感谢。

2 个答案:

答案 0 :(得分:0)

我认为你应该做这样的事情,如果这是你应该获得菜单的元素

<div id="item-1">This should have a menu</div>

然后你的javascript应该是这样的:

$(document).ready( function() {
  $('#item-1').contextMenu({
    menue: 'menueName'
  },
  function(action, el, pos) {
    // do sth when the menu was clicked
    alert('Action ' + action + ' was clicked on ' + $(el).attr('id'));
  });
});

menue itselfe应该在如下列表中定义:

<ul id="#menueName" class="contextMenu">
  <li class="action1">
    <a href="#action1>Action 1</a>
  </li>
  <li class="action1">
    <a href="#action2>Action 2</a>
  </li>
</ul>

另外,请确保您的网页中包含jQuery 1.3或更高版本。

答案 1 :(得分:0)

我遇到了同样的问题。 用if(jQuery)( function() {替换jquery.contextMenu.js开头的(function($, undefined){修复了问题。我希望有所帮助。