Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> HTML

HTML5 Canvas एलिमेंट पर सिंपल onClick इवेंट हैंडलर कैसे जोड़ें?

कैनवास एलिमेंट में खींचे गए एलिमेंट्स का कोई प्रतिनिधित्व नहीं होता। उनका एकमात्र प्रतिनिधित्व उनके द्वारा उपयोग किए जाने वाले पिक्सेल्स और उनका रंग होता है। कैनवास एलिमेंट पर ड्राइंग का अर्थ इमीडिएट मोड में बिटमैप ड्राइंग है। कैनवास एलिमेंट (आकृति) पर क्लिक इवेंट प्राप्त करने के लिए, आपको कैनवास HTML एलिमेंट पर क्लिक इवेंट्स कैप्चर करने और यह निर्धारित करने की आवश्यकता है कि कौन सा एलिमेंट क्लिक किया गया था। इसके लिए एलिमेंट की चौड़ाई और ऊंचाई स्टोर करने की आवश्यकता होती है।

अपने कैनवास एलिमेंट पर क्लिक इवेंट जोड़ने के लिए, नीचे दिए गए कोड का उपयोग करें:

canvas.addEventListener('click', function() { }, false);

उदाहरण

यह निर्धारित करने के लिए कि कौन सा एलिमेंट क्लिक किया गया था, निम्न कोड स्निपेट उपयोग करें:

var e = document.getElementById('myCanvas'),
    elemLeft = e.offsetLeft,
    elemTop = e.offsetTop,
    context = e.getContext('2d'),
    elements = []; // click इवेंट के लिए इवेंट लिसनर
e.addEventListener('click', function(event) {
  var xVal = event.pageX - elemLeft,
      yVal = event.pageY - elemTop;
  console.log(xVal, yVal);
  elements.forEach(function(ele) {
    if (yVal > ele.top && yVal < ele.top + ele.height &&
        xVal > ele.left && xVal < ele.left + ele.width) {
      alert('element clicked');
    }
  });
}, false);
elements.push({
  colour: '#1C2128',
  width: 250,
  height: 200,
  top: 30,
  left: 20
});
elements.forEach(function(ele) {
  context.fillStyle = ele.colour;
  context.fillRect(ele.left, ele.top, ele.width, ele.height);
});

कैनवास में हिट टेस्टिंग मैन्युअल करनी पड़ती है। प्रत्येक ड्रॉन ऑब्जेक्ट की ज्यामिति (स्थिति, आकार) स्टोर करें, फिर क्लिक निर्देशांकों की तुलना करें। लाइब्रेरीज़ जैसे Fabric.js, Konva.js, Paper.js इसे सरल बनाती हैं।

  1. HTML5 कैनवास का उपयोग करके तारा (Star) कैसे बनाएं? HTML5 कैनवास का उपयोग करके तारा (Star) कैसे बनाएं?

    HTML कैनवास पर ड्राइंग जावास्क्रिप्ट के साथ की जाती है। कैनवास पर ड्राइंग से पहले getElementById() और getContext() HTML DOM मेथड्स का उपयोग करें। HTML में तारा बनाने के लिए कैनवास एलिमेंट का उपयोग करें।कैनवास के साथ, तारा बनाने के लिए lineTo() मेथड का उपयोग करें। lineTo() मेथड में x और y पैरामीटर मा

  1. HTML5 कैनवास के साथ इमेज का उपयोग कैसे करें? HTML5 कैनवास के साथ इमेज का उपयोग कैसे करें?

    HTML5 <canvas> टैग का उपयोग स्क्रिप्टिंग के माध्यम से ग्राफिक्स, एनिमेशन आदि बनाने के लिए किया जाता है। HTML5 कैनवास के साथ इमेज का उपयोग करने के लिए drawImage() मेथड का उपयोग करें। यह मेथड दी गई इमेज को कैनवास पर बनाता है।उदाहरणHTML कैनवास के साथ इमेज का उपयोग करने का तरीका सीखने के लिए निम्न

  1. HTML में तत्व का मान कैसे जोड़ें? HTML में तत्व का मान कैसे जोड़ें?

    value एट्रिब्यूट value एट्रिब्यूट HTML में विभिन्न फॉर्म तत्वों का प्रारंभिक या वर्तमान मान निर्दिष्ट करता है। यह निम्नलिखित तत्वों के साथ काम करता है: <button>, <input>, <li>, <option>, <meter>, <progress>, <param>। तत्व-वार उपयोग 1. <input> तत्व &