好的..所以我正在做一些网格工作,我有几个功能正在使用。 一切正常,除非我单击上下文菜单时它不会触发警报。 仔细观察文档后。这里应使用“#Selector”而不是文档......
// Show menu when #myDiv is clicked
jQuery(document).contextMenu({
menu: 'myMenu'
},
function(action, el, pos){
alert('Action: ' + action + '\n\n');
});
当我改变
jQuery(document).contextMenu({
到
// Show menu when #myDiv is clicked
jQuery("#grid").contextMenu({
这将触发所选的上下文警报。但是现在当我生成一个可拖动的容器
时jQuery("#grid").append("<div id='container"+container+"' class='container' style='border: 2px solid black;width:100px;height:100px;position: absolute !important;left:100px;top:"+Math.floor(Math.random()*601)+"px'><p style='background-color:lightblue;margin:0px'>------<span style='background-color:white'>"+container+"</span>------</p><br/>a</div>");
jQuery('#debug_container').html('Container Added');
jQuery('.container').draggable({handle: 'p',grid: [ 8,8 ],
containment: "#grid",
drag: function() {
var currentID = jQuery(this).attr('id').substr(9, 1);
setContainer(currentID);
}
});
它不会让它继续下去...... 原件将允许下降,但不会提醒。 我想要两个..
一如既往,任何帮助都非常感激。
答案 0 :(得分:1)
经过一些调试后,我发现问题的根源来自第37行的jquery.contextMenu.js
jQuery(this).mousedown( function(e) {
var evt = e;
evt.stopPropagation();
jQuery(this).mouseup( function(e) {
//这样做解决了我的问题==&gt; // e.stopPropagation();
var srcElement = jQuery(this);
jQuery(this).unbind('mouseup');
if( evt.button == 2 ) {
// Hide context menus that may be showing
jQuery(".contextMenu").hide();
// Get this context menu
var menu = jQuery('#' + o.menu);