2009-07-07 13 views
8

पर राइट क्लिक कैप्चर करें मैं एक एचटीएमएल पेज पर सेल पेंट करने की कोशिश कर रहा हूं, जहां प्रत्येक सेल एक डीआईवी है, मुझे इनमें से किसी भी सेल पर राइट क्लिक इवेंट कैप्चर करने में सक्षम होना चाहिए, मैं यह कैसे कर सकता हूं?एचटीएमएल डीआईवी

<script> 
function fn(event) 
{ 
alert('hello'+event.button); 
} 
</script> 

<div id="cell01" 
     class="" 
     onclick="fn(event);" 
     style="left: 1471px; width: 24px; height: 14px; top: 64px; text-align: center; position: absolute; background-color: rgb(128, 128, 0);">1</div> 

उत्तर

7

इसे देखें: Javascript - event properties। दाएं माउस बटन के लिए मूल्य 2 है, हालांकि यह भी ध्यान दें कि यह क्लिक करने के बजाय mousedown या mouseup ईवेंट का उपयोग करने की अनुशंसा करता है।

यहाँ पेज से एक नमूना सही क्लिक पहचान दिखा है:

function doSomething(e) { 
    var rightclick; 
    if (!e) var e = window.event; 
    if (e.which) rightclick = (e.which == 3); 
    else if (e.button) rightclick = (e.button == 2); 
    alert('Rightclick: ' + rightclick); // true or false 
} 
+0

+1 - उदाहरण के लिए - यद्यपि आप एक +2 के लायक हैं क्योंकि मैंने ड्रनी पर जल्दी होने के लिए जनी को +1 भी दिया था, लेकिन आपने नमूना कोड शामिल किया था;) –

3

मैं सुझाव है कि आप the event handling page on Quirksmode की जाँच, के रूप में यह सही क्लिक के साथ ही साथ एक व्यापक गाइड पर कब्जा करने की घटनाओं के साथ क्रॉस-ब्राउज़र मुद्दों से बचने के लिए एक गाइड भी शामिल है।

चेतावनी का एक शब्द हालांकि: सभी ब्राउज़र डिफ़ॉल्ट रूप से सही क्लिक का पता लगाने की अनुमति नहीं देते हैं।

+0

मुझे यह करने के लिए मारो;) – roryf

+0

मैं प्यार कैसे माइक्रोसॉफ्ट यह अधिकार मिल गया ... – geowa4

34

सबसे आसान तरीका है

<div style="height: 100px; background-color: red;" oncontextmenu="window.alert('test');return false;"></div> 
+0

यह बेहतर उत्तर है। –

+0

महान जवाब ... – aditya

संबंधित मुद्दे