[英]JavaScript: Capturing right click and disabling menu only within certain element
我編寫了一個jquery腳本,其中屏幕上有一個小網格,使用拖放用戶可以在網格上放置切片(卡扣到位)。 目前,如果您將鼠標懸停在某個磁貼上,它會在旋轉選項中淡入淡出,但如果您可以右鍵單擊旋轉(使其更自然),我會更喜歡它。 我理解完全阻止右鍵通常是不滿意的,所以想知道是否可能只是在一個特定元素內,然后捕獲該事件,在JS中執行某些操作並禁用上下文菜單? - 適用於所有瀏覽器。
另外,目前我正在使用jQuery for effects和自定義javascript進行拖放,是否值得一看jQuery插件進行拖放?
非常感謝,
要捕獲右鍵單擊,您可以使用此jquery:
$('#gridID').bind('contextmenu', function(e) {
// do stuff here instead of normal context menu
return false;
});
這適用於chrome,firefox和safari。
沒有測試IE
。 也適用於IE。 唯一需要注意的是它顯然不適用於Opera。 所以,如果你能忍受......
我不喜歡在網頁上使用鼠標右鍵。 但是,如果您真的想這樣做,可以按照此處所述捕獲鼠標右鍵。 如果鼠標位於網格單元格上,您可以有條件地阻止鼠標右鍵(換句話說,在事件處理程序中返回false)。
關於你的獎金問題: jquery ui具有拖放功能 。 使用它可能比滾動自己更容易。
“是否值得一看jQuery插件進行拖放?”
只有當您不打算在帶有Safari的iPhone OS上使用您的應用程序時,包括iPad,請參閱Safari Web內容指南:處理事件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.