के भीतर जावास्क्रिप्ट के साथ माउस स्थिति प्राप्त करना मैं jquery और html5 कैनवास का अध्ययन कर रहा हूं। मैं बस इतना करना चाहता हूं कि एक साधारण एचटीएमएल 5 ड्राइंग उदाहरण है। जब माउस चलता है, तो मैं अपने माउस के नीचे लाल वर्ग खींचता हूं।कैनवास
मेरा कोड सरल है, लेकिन मुझे कैनवास के भीतर माउस कर्सर की स्थिति प्राप्त करने में समस्या है।
अभी, मैं x = event.offsetX का उपयोग कर रहा हूं; माउस की स्थिति पाने के लिए। यह क्रोम में बहुत अच्छी तरह से काम करता है, हालांकि जब फ़ायरफ़ॉक्स की बात आती है, तो यह काम नहीं करती है। मैंने कोड को x = event.layerX में बदल दिया। लेकिन ऐसा लगता है कि लेयरएक्स वेब पेज के सापेक्ष मेरे माउस की स्थिति है, कैनवास की स्थिति नहीं। क्योंकि मैं हमेशा ऑफसेट देखता हूं।
मेरे पास दो प्रश्न हैं, पहले, फ़ायरफ़ॉक्स के नीचे सही माउस स्थिति प्राप्त करने के लिए क्या करना सही है। दूसरा, मैं एक कोड कैसे लिख सकता हूं जो फ़ायरफ़ॉक्स, क्रोम, सफारी और ओपेरा के लिए काम करता है?
<!doctype html />
<html><head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(
function(){
var flip = document.getElementById('flip');
var context = flip.getContext('2d');
context.fillStyle = "rgb(255,255,255)";
context.fillRect(0, 0, 500, 500);
$("a").click(function(event){alert("Thanks for visiting!");});
$("#flip").mousemove(function(event){
var x, y;
x = event.layerX;
y = event.layerY;
//alert("mouse pos"+event.layerX);
var flip = document.getElementById('flip');
var context = flip.getContext('2d');
context.fillStyle = "rgb(255,0,0)";
context.fillRect(x, y, 5, 5);
}
);
}
);
</script>
</head> <body bgcolor="#000000"> <a href="http://jquery.com/">jQuery</a><canvas id="flip" width="500" height="500">
This text is displayed if your browser does not support HTML5 Canvas.</canvas> </body></html>
'' अमान्य है और quirks मोड का आह्वान करता है, जो बहुत सी डोम चीजों के व्यवहार को बदलता है! '' सही डीटीडी है। –