बस को रोकने डिफ़ॉल्ट mouseup पर हर समय पर होने की पाठ चयन का कारण बनता है। माउस चयन घटना पाठ चयन को साफ़ करने के लिए ज़िम्मेदार है। हालांकि, अपने डिफ़ॉल्ट व्यवहार को रोकने से, आप माउस को टेक्स्ट का चयन रद्द करने में असमर्थ हैं।
इससे बचने के लिए और फिर से काम करने के लिए टेक्स्ट चयन प्राप्त करने के लिए, आप फ़ोकस पर एक ध्वज सेट कर सकते हैं, इसे माउस से पढ़ सकते हैं और इसे रीसेट कर सकते हैं ताकि भविष्य में MOUSEUP ईवेंट अपेक्षित कार्य करेगा।
$("#souper_fancy").focus(function() {
$(this).select();
//set flag for preventing MOUSEUP event....
$this.data("preventMouseUp", true);
});
$("#souper_fancy").mouseup(function(e) {
var preventEvent = $this.data("preventMouseUp");
//only prevent default if the flag is TRUE
if (preventEvent) {
e.preventDefault();
}
//reset flag so MOUSEUP event deselect the text
$this.data("preventMouseUp", false);
});
मुझे आईपैड/आईफोन की सफारी में सटीक व्यवहार चाहिए। यह आइपॉड/आईफोन ब्राउज़र में काम नहीं कर रहा है। कोई सुराग। स्वीकृत उत्तर के नीचे केवल डेस्कटॉप आधारित क्रोम/सफारी के लिए है। –
नोट: यहां स्वीकृत उत्तर केवल आधा समस्या हल करता है। यह चुनिंदा काम करता है, लेकिन इसे बाद में क्लिक के साथ अन-चयन करना मुश्किल हो जाता है। एक बेहतर समाधान यहां पाया जा सकता है: http://stackoverflow.com/questions/3380458/looking-for-a-better-workaround-to-chrome-select-on-focus-bug – SDC