A brief discussion on Mousewheel events_javascript skills
In fact, most browsers (IE6, IE7, IE8, Opera 10, Safari 5) provide the "mousewheel" event. Unfortunately, Firefox 3.5 does not support this event. Fortunately, Firefox 3.5 provides another equivalent event: "DOMMouseScroll" (a test case for events and event properties).
[Ctrl A Select all Note: If you need to introduce external Js, you need to refresh to execute
OK, we now know To account for the implementation differences between different browsers, the compatible code is as follows: The code is as follows:
var addEvent = (function(){
if (window.addEventListener) {
return function(el, sType, fn, capture) {
el.addEventListener(sType, fn, (capture)) ;
};
} else if (window.attachEvent) {
return function(el, sType, fn, capture) {
el.attachEvent("on" sType, fn);
};
} else {
return function(){};
}
})(),
// isFirefox is pseudo code, you can implement it yourself
mousewheel = isFirefox ? "DOMMouseScroll" : "mousewheel";
// object is also pseudocode, you need to register the element of Mousewheel event
addEvent(object, mousewheel, function(event){
event = window.event | | event;
// todo something
}, false);
Let’s go back to the interactive effect to be achieved. Now there are some other problems that need to be solved:
1. Should the page font be enlarged or reduced? ==> Does the mouse wheel scroll up or down?
2. What is the multiple of page font scaling? ==> What is the scrolling range of the mouse wheel?
Fortunately, we can get this information through some attribute values of the event:
1. "event.wheelDelta" attribute value in the "mousewheel" event: the returned value, if it is a positive value, it means that the wheel is up Scroll, if it is a negative value, it means that the wheel is scrolling downward; the returned values are all multiples of 120, that is: amplitude = returned value / 120.
2. "event.detail" attribute value in the "DOMMouseScroll" event: the returned value. If it is a negative value, it means that the wheel is scrolling upward (just the opposite of "event.wheelDelta"). If it is a positive value, it means that the wheel is scrolling upward. Scroll down; the returned values are all multiples of 3, that is: amplitude = returned value/3.
3. The “mousewheel” event is a special case in Opera 10. It has both the “event.wheelDelta” attribute and the “event.detail” attribute.
Note: For the third point above, there is this comment in the article "The onmousewheel event of JavaScript": The code is as follows:
In Opera, “detail” returns the same value as it does in FF, so for the big O you should rely on “detail” instead of “wheelDelta”, which depending on the Opera version may return a different value than in IE's.
However, after testing, the event.wheelDelta attribute in Opera 9 and Opera 10 behaves exactly the same as in other browsers, and no exceptions or errors were found. From an interface perspective, "event.wheelDelta" should be used first in the code property.
The code at this time is as follows:
var addEvent = ( function(){
if (window.addEventListener) {
return function(el, sType, fn, capture) {
el.addEventListener(sType, fn, (capture));
};
} else if (window.attachEvent) {
return function(el, sType, fn, capture) {
el.attachEvent("on" sType, fn);
};
} else {
return function(){};
}
})(),
stopEvent: function(event) {
if (event.stopPropagation) {
event. stopPropagation();
} else {
event.cancelBubble = true;
}
if (event.preventDefault) {
event.preventDefault();
} else {
event.returnValue = false;
}
},
zoomIn = function(){},
zoomOut = function(){},
// isFirefox is pseudo code, you can Implement it yourself
mousewheel = isFirefox ? "DOMMouseScroll" : "mousewheel";
// object is pseudo code, you need to register the element of Mousewheel event
addEvent(object, mousewheel, function(event){
var delta = 0;
event = window.event || event;
stopEvent(event);
delta = event.wheelDelta ? (event.wheelDelta / 120) : (- event.detail / 3 ;

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics










![Event ID 4660: Object deleted [Fix]](https://img.php.cn/upload/article/000/887/227/168834320512143.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Some of our readers encountered event ID4660. They're often not sure what to do, so we explain it in this guide. Event ID 4660 is usually logged when an object is deleted, so we will also explore some practical ways to fix it on your computer. What is event ID4660? Event ID 4660 is related to objects in Active Directory and will be triggered by any of the following factors: Object Deletion – A security event with Event ID 4660 is logged whenever an object is deleted from Active Directory. Manual changes – Event ID 4660 may be generated when a user or administrator manually changes the permissions of an object. This can happen when changing permission settings, modifying access levels, or adding or removing people or groups

On iPhones running iOS 16 or later, you can display upcoming calendar events directly on the lock screen. Read on to find out how it's done. Thanks to watch face complications, many Apple Watch users are used to being able to glance at their wrist to see the next upcoming calendar event. With the advent of iOS16 and lock screen widgets, you can view the same calendar event information directly on your iPhone without even unlocking the device. The Calendar Lock Screen widget comes in two flavors, allowing you to track the time of the next upcoming event, or use a larger widget that displays event names and their times. To start adding widgets, unlock your iPhone using Face ID or Touch ID, press and hold

When a value is added to the input box, the oninput event occurs. You can try running the following code to understand how to implement oninput events in JavaScript - Example<!DOCTYPEhtml><html> <body> <p>Writebelow:</p> <inputtype="text"

Commonly used events in jquery are: 1. Window events; 2. Mouse events, which are events generated when the user moves or clicks the mouse on the document, including mouse clicks, move-in events, move-out events, etc.; 3. Keyboard events, Events are generated every time the user presses or releases a key on the keyboard, including key press events, key release events, etc.; 4. Form events, such as the focus() event will be triggered when an element gains focus, and the focus() event will be triggered when it loses focus. The blur() event is triggered, and the submit() event is triggered when the form is submitted.

jQuery is a popular JavaScript library that can be used to simplify DOM manipulation, event handling, animation effects, etc. In web development, we often encounter situations where we need to change event binding on select elements. This article will introduce how to use jQuery to bind select element change events, and provide specific code examples. First, we need to create a dropdown menu with options using labels:

How to implement calendar functions and event reminders in PHP projects? Calendar functionality and event reminders are one of the common requirements when developing web applications. Whether it is personal schedule management, team collaboration, or online event scheduling, the calendar function can provide convenient time management and transaction arrangement. Implementing calendar functions and event reminders in PHP projects can be completed through the following steps. Database design First, you need to design a database table to store information about calendar events. A simple design could contain the following fields: id: unique to the event

Methods for building event-based applications in PHP include using the EventSourceAPI to create an event source and using the EventSource object to listen for events on the client side. Send events using Server Sent Events (SSE) and listen for events on the client side using an XMLHttpRequest object. A practical example is to use EventSource to update inventory counts in real time in an e-commerce website. This is achieved on the server side by randomly changing the inventory and sending updates, and the client listens for inventory updates through EventSource and displays them in real time.

In-depth understanding of the close button event in jQuery During the front-end development process, we often encounter situations where we need to implement the close button function, such as closing pop-up windows, closing prompt boxes, etc. When using jQuery, a popular JavaScript library, it becomes extremely simple and convenient to implement the close button event. This article will delve into how to use jQuery to implement close button events, and provide specific code examples to help readers better understand and master this technology. First, we need to understand how to define
