ब्राउज़र विंडो में कर्सर की गति के जवाब में कुछ क्रियाओं को प्रोग्राम करने के लिए, कभी-कभी इसके निर्देशांक निर्धारित करना आवश्यक होता है। यह एक स्क्रिप्ट द्वारा किया जा सकता है जिसमें ब्राउज़र में होने वाली घटनाओं को ट्रैक करने की क्षमता होती है। क्लाइंट-साइड जावास्क्रिप्ट स्क्रिप्ट में यह क्षमता होती है। नीचे इस भाषा की क्षमताओं का उपयोग करके कर्सर के निर्देशांक प्राप्त करने के विकल्पों में से एक का वर्णन किया गया है।
निर्देश
चरण 1
कर्सर के वर्तमान निर्देशांक प्राप्त करने के लिए ईवेंट ऑब्जेक्ट के गुणों का उपयोग करें। इस ऑब्जेक्ट में गुणों का एक पूरा सेट है जो माउस कर्सर के निर्देशांक निर्धारित करने के लिए प्रासंगिक है। LayerX गुण में वर्तमान परत के बाएँ किनारे से पिक्सेल में मापी गई दूरी और LayerY - इसके शीर्ष किनारे से समान दूरी शामिल है। इन दो गुणों में समानार्थक शब्द हैं - event. LayerX के बजाय, आप event.x लिख सकते हैं, और event. LayerY के बजाय, आप event.y लिख सकते हैं। पेजएक्स और पेजवाई गुण ब्राउज़र विंडो के ऊपरी-बाएँ किनारे के सापेक्ष कर्सर के क्षैतिज और ऊर्ध्वाधर निर्देशांक रखते हैं, और स्क्रीनएक्स और स्क्रीनवाई गुण मॉनिटर स्क्रीन के सापेक्ष समान मान रखते हैं।
चरण 2
अपने कोड में ब्राउज़र प्रकार की जाँच जोड़ें और ईवेंट ऑब्जेक्ट पर उपरोक्त गुणों के अलावा क्लाइंटएक्स और क्लाइंटवाई गुणों का उपयोग करें। यह आवश्यक है क्योंकि माइक्रोसॉफ्ट अपने इंटरनेट एक्सप्लोरर ब्राउज़र में एक अलग संपत्ति पदनाम का उपयोग करता है। आप निर्देशांक निर्धारित करने के लिए दोनों दृष्टिकोणों को जोड़ सकते हैं, उदाहरण के लिए, इस तरह:
अगर (event.pageX || evevnt.pageY) {
कोऑर्डिनेटएक्स = evevnt.pageX;
निर्देशांकY = evevnt.pageY;
}
और अगर (evevnt.clientX || evevnt.clientY) {
कोऑर्डिनेटएक्स = evevnt.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft;
निर्देशांकवाई = evevnt.clientY + (दस्तावेज़.दस्तावेज़ एलिमेंट.स्क्रॉलटॉप || दस्तावेज़.बॉडी.स्क्रॉलटॉप) - दस्तावेज़.
}
चरण 3
निर्देशांक परिभाषा कोड को एक कस्टम फ़ंक्शन में रखें। उदाहरण के लिए:
फ़ंक्शन गेटमाउस (घटना) {
वर कोऑर्डिनेटएक्स = 0, कोऑर्डिनेटवाई = 0;
अगर (! evevnt) evevnt = window.event;
अगर (event.pageX || evevnt.pageY) {
कोऑर्डिनेटएक्स = evevnt.pageX;
निर्देशांकY = evevnt.pageY;
}
और अगर (evevnt.clientX || evevnt.clientY) {
कोऑर्डिनेटएक्स = evevnt.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft;
निर्देशांकवाई = evevnt.clientY + (दस्तावेज़.दस्तावेज़ एलिमेंट.स्क्रॉलटॉप || दस्तावेज़.बॉडी.स्क्रॉलटॉप) - दस्तावेज़.
}
वापसी {"कोर्डएक्स": कोऑर्डिनेटएक्स, "कोर्डी": कोऑर्डिनेटवाई};
}
यह फ़ंक्शन दो नामित तत्वों की एक सरणी देता है, जिनमें से पहले (coordX कुंजी के साथ) में X निर्देशांक होता है, और दूसरे (coordY) में Y निर्देशांक होता है।
चरण 4
इस फ़ंक्शन को किसी ईवेंट पर कॉल करें - उदाहरण के लिए, दस्तावेज़ संदर्भ में माउस मूव इवेंट (ऑनमाउसमोव) पर। नीचे दिया गया नमूना स्थिति बार में माउस निर्देशांक को आउटपुट करने के लिए एक फ़ंक्शन का उपयोग करता है:
document.onmousemove = function (eventnt) {var CurCoord = GetMouse (eventnt); window.status = "कोर्ड X:" + CurCoord.coordX + "px, coord Y:" + CurCoord.coordY + "px";};