मैं jQuery में live()
समारोह की एक अजीब व्यवहार देखा है:jQuery रहते हैं ('क्लिक') के लिए फायरिंग राइट क्लिक करें
<a href="#" id="normal">normal</a>
<a href="#" id="live">live</a>
$('#normal').click(clickHandler);
$('#live').live('click', clickHandler);
function clickHandler() {
alert("Clicked");
return false;
}
कि "लाइव" पर राइट क्लिक करें ठीक है और आप जब तक dandy है लिंक और यह हैंडलर को फायर करता है, और फिर संदर्भ मेनू नहीं दिखाता है। इवेंट हैंडलर "सामान्य" लिंक पर बिल्कुल (जैसा अपेक्षित) आग नहीं लगाता है।
मैं इस के लिए हैंडलर बदलकर आसपास काम कर लिया है:
function clickHandler(e) {
if (e.button != 0) return true;
// normal handler code here
return false;
}
लेकिन इनके अलावा ईवेंट हैंडलर्स है कि जोड़ने के लिए करने के लिए वास्तव में कष्टप्रद है। क्या ईवेंट हैंडलर केवल नियमित क्लिक हैंडलर की तरह आग लगने का कोई बेहतर तरीका है?
भविष्य में आप एक प्रश्न कैसे पूछते हैं? – PetersenDidIt
मैं यहां आपके कामकाज को देखने के लिए उत्साहित था, और तुरंत अपने ऐप पर यह कोशिश की, और हालांकि जिन लिंक पर मैं अभी राइट-क्लिक कर रहा हूं उन्हें पकड़ा और अनदेखा किया जा सकता है, मैं अभी भी अपना राइट-क्लिक संदर्भ मेनू नहीं देख रहा हूं इन। इसके अलावा, मेरा मध्य माउस बटन क्लिक करें (एक नए टैब में खुलता है) या तो काम नहीं करता है। लेकिन, कम से कम हैंडलर जल्दी वापस आ सकता है! – Funka
असल में, ऐसा लगता है कि अगर मैं बार-बार राइट-क्लिक करता हूं, तो मैं कभी-कभी संदर्भ-मेनू प्रकट होने के लिए प्राप्त कर सकता हूं .... हम्म। – Funka