আপনি যদি "আরও ভাল জাভাস্ক্রিপ্ট মাউস ইভেন্টগুলি" খুঁজছেন যা এর জন্য অনুমতি দেয়
- বাম মাউসডাউন
- মাঝের মাউসডাউন
- ডান মোসডাউন
- বাম মাউসআপ
- মাঝারি মাউসআপ
- ডান মাউসআপ
- বাম ক্লিক করুন
- মাঝের ক্লিক
- সঠিক পছন্দ
- মাউস হুইল আপ
- মাউস হুইল ডাউন
এই ক্রস ব্রাউজারটি দেখে নিন সাধারণ জাভাস্ক্রিপ্ট যা উপরের ইভেন্টগুলিকে ট্রিগার করে এবং মাথা ব্যথার কাজটি সরিয়ে দেয়। এটি কেবল আপনার স্ক্রিপ্টের শিরোনামে অনুলিপি করুন এবং আটকে দিন বা এটি <head>
আপনার নথির একটি ফাইলে অন্তর্ভুক্ত করুন । তারপরে আপনার ইভেন্টগুলিকে আবদ্ধ করুন, নীচের পরবর্তী কোড ব্লকটি দেখুন যা ইভেন্টগুলি ক্যাপচার এবং তাদেরকে অর্পিত ফাংশনগুলিকে ফায়ার করার এক জাকারি উদাহরণ দেখায়, যদিও এটি সাধারণ জাভাস্ক্রিপ্ট বাইন্ডিংয়ের সাথেও কাজ করে।
আপনার যদি এটি কাজ করতে আগ্রহী হয়, তবে জেএসফিডালটি দেখুন: https://jsfiddle.net/BNefn/
/**
Better Javascript Mouse Events
Author: Casey Childers
**/
(function(){
// use addEvent cross-browser shim: https://gist.github.com/dciccale/5394590/
var addEvent = function(a,b,c){try{a.addEventListener(b,c,!1)}catch(d){a.attachEvent('on'+b,c)}};
/* This function detects what mouse button was used, left, right, middle, or middle scroll either direction */
function GetMouseButton(e) {
e = window.event || e; // Normalize event variable
var button = '';
if (e.type == 'mousedown' || e.type == 'click' || e.type == 'contextmenu' || e.type == 'mouseup') {
if (e.which == null) {
button = (e.button < 2) ? "left" : ((e.button == 4) ? "middle" : "right");
} else {
button = (e.which < 2) ? "left" : ((e.which == 2) ? "middle" : "right");
}
} else {
var direction = e.detail ? e.detail * (-120) : e.wheelDelta;
switch (direction) {
case 120:
case 240:
case 360:
button = "up";
break;
case -120:
case -240:
case -360:
button = "down";
break;
}
}
var type = e.type
if(e.type == 'contextmenu') {type = "click";}
if(e.type == 'DOMMouseScroll') {type = "mousewheel";}
switch(button) {
case 'contextmenu':
case 'left':
case 'middle':
case 'up':
case 'down':
case 'right':
if (document.createEvent) {
event = new Event(type+':'+button);
e.target.dispatchEvent(event);
} else {
event = document.createEventObject();
e.target.fireEvent('on'+type+':'+button, event);
}
break;
}
}
addEvent(window, 'mousedown', GetMouseButton);
addEvent(window, 'mouseup', GetMouseButton);
addEvent(window, 'click', GetMouseButton);
addEvent(window, 'contextmenu', GetMouseButton);
/* One of FireFox's browser versions doesn't recognize mousewheel, we account for that in this line */
var MouseWheelEvent = (/Firefox/i.test(navigator.userAgent)) ? "DOMMouseScroll" : "mousewheel";
addEvent(window, MouseWheelEvent, GetMouseButton);
})();
উন্নত মাউস ক্লিক ইভেন্টগুলি উদাহরণ (সরলতার জন্য jquery ব্যবহার করে, তবে উপরের ক্রস ব্রাউজারে কাজ করবে এবং একই ইভেন্টের নামগুলিকে জ্বালিয়ে দেবে, IE নামের আগে এটি ব্যবহার করবে)
<div id="Test"></div>
<script type="text/javascript">
$('#Test').on('mouseup',function(e){$(this).append(e.type+'<br />');})
.on('mouseup:left',function(e){$(this).append(e.type+'<br />');})
.on('mouseup:middle',function(e){$(this).append(e.type+'<br />');})
.on('mouseup:right',function(e){$(this).append(e.type+'<br />');})
.on('click',function(e){$(this).append(e.type+'<br />');})
.on('click:left',function(e){$(this).append(e.type+'<br />');})
.on('click:middle',function(e){$(this).append(e.type+'<br />');})
.on('click:right',function(e){$(this).append(e.type+'<br />');})
.on('mousedown',function(e){$(this).html('').append(e.type+'<br />');})
.on('mousedown:left',function(e){$(this).append(e.type+'<br />');})
.on('mousedown:middle',function(e){$(this).append(e.type+'<br />');})
.on('mousedown:right',function(e){$(this).append(e.type+'<br />');})
.on('mousewheel',function(e){$(this).append(e.type+'<br />');})
.on('mousewheel:up',function(e){$(this).append(e.type+'<br />');})
.on('mousewheel:down',function(e){$(this).append(e.type+'<br />');})
;
</script>
এবং যারা নিখুঁত সংস্করণের প্রয়োজন তাদের জন্য ...
!function(){function e(e){e=window.event||e;var t="";if("mousedown"==e.type||"click"==e.type||"contextmenu"==e.type||"mouseup"==e.type)t=null==e.which?e.button<2?"left":4==e.button?"middle":"right":e.which<2?"left":2==e.which?"middle":"right";else{var n=e.detail?-120*e.detail:e.wheelDelta;switch(n){case 120:case 240:case 360:t="up";break;case-120:case-240:case-360:t="down"}}var c=e.type;switch("contextmenu"==e.type&&(c="click"),"DOMMouseScroll"==e.type&&(c="mousewheel"),t){case"contextmenu":case"left":case"middle":case"up":case"down":case"right":document.createEvent?(event=new Event(c+":"+t),e.target.dispatchEvent(event)):(event=document.createEventObject(),e.target.fireEvent("on"+c+":"+t,event))}}var t=function(e,t,n){try{e.addEventListener(t,n,!1)}catch(c){e.attachEvent("on"+t,n)}};t(window,"mousedown",e),t(window,"mouseup",e),t(window,"click",e),t(window,"contextmenu",e);var n=/Firefox/i.test(navigator.userAgent)?"DOMMouseScroll":"mousewheel";t(window,n,e)}();