marks right-click issue
by mark edwards
HTML
<link rel="stylesheet" href="http://jqwidgets.com/jquery-widgets-demo//jqwidgets/styles/jqx.base.css">
<script src="http://jqwidgets.com/jquery-widgets-demo//scripts/demos.js"></script>
<script src="http://jqwidgets.com/jquery-widgets-demo/jqwidgets/jqxcore.js"></script>
<script src="http://jqwidgets.com/jquery-widgets-demo/jqwidgets/jqxmenu.js"></script>
<p class='testClicker'>click me for menu One</p>
<br />
<p class='testClicker'>click me for menu Two</p>
<br />
<p class='testClicker'>click me for menu three</p>
JavaScript
$(document).ready(function () {
$("p.testClicker").on('mousedown', function (event) {
if ( $('div.jqxTempMenuClass').length ) {
$('div.jqxTempMenuClass').jqxMenu('close');
}
var rightClick = jqxWidgetsIsRightClick(event)
|| $.jqx.mobile.isTouchDevice();
if (rightClick) {
var scrollTop = $(window).scrollTop();
var scrollLeft = $(window).scrollLeft();
var jqxTempMenu = document.createElement('div');
jqxTempMenu.setAttribute('class', 'jqxTempMenuClass');
$(jqxTempMenu).append('Jqxwidgets are totally awesome!');
var contextMenu
= $(jqxTempMenu).jqxMenu(
{ autoCloseInterval: 300
, width: '120px'
, height: '140px'
, autoOpenPopup: false
, mode: 'popup'
}
);
contextMenu.jqxMenu
('open', parseInt(event.clientX) + 5 + scrollLeft, parseInt(event.clientY) + 5 + scrollTop);
return false;
}
});
});
$(document).on('contextmenu', function (e) {
return false;
});
function jqxWidgetsIsRightClick(event) {
var rightclick;
if (!event) var event = window.event;
if (event.which) rightclick = (event.which == 3);
else if (event.button) rightclick = (event.button == 2);
return rightclick;
}