Tengo algo hoy. La página era originalmente horizontal, por lo que había una barra de desplazamiento horizontal en la parte inferior, y no había una barra de desplazamiento verticalmente. Ahora se requiere que la polea del mouse se desplace a la izquierda y a la derecha, lo que requiere escribir código JS para implementarlo. Encontré muchos problemas al escribir este proceso.
Las funciones respaldadas por los tres navegadores de IE Firefox Chrome son completamente diferentes, es una locura.
Aquí hay algunos puntos de conocimiento para explicar
Monitorear eventos de polea
es decir: en el mousewheel
Firfox: Dommousescroll
Chrome: rueda del ratón
Por desgracia, sin palabras
El valor de retorno de desplazamiento también es diferente
Firfox Devuelve +-3 con detalle
Otros usan Wheeldelta para regresar +-120
Hay un valor de retorno para determinar la dirección del desplazamiento
Además del movimiento de la página de la página de Chrome Left, document.documentelement.scrollleft se utiliza para navegadores generales.
Sin embargo, el navegador Chrome debe usar document.body.scrollleft
Ok, el código se comparte de la siguiente manera:
< xmlns = "http://www.w3.org/1999/xhtml"> <fead> <meta http-equiv = "content-type" content = "text/html; charset = utf-8"/> <title> title-titled document </title> </head> <body> <ivi Id = "test" </div> dbody = document.getElementById ('test'); // ff use objadDevent (document, 'dommousScroll', function (e) {return mouse_scroll (e);}) // no ff Chrome use objaddevent (document, 'mousewheel', function (e) {return rouse_scroll (e);} // crome use objaddevent (dbody, 'mousewheel', function (e) {return mouse_scroll (e);}) función mouse_scroll (e) {e = e || Window.event; var deld = E.Wheeldelta? // Use esto para navegadores que no sean de cromo // use esto para los navegadores Chrome if (document.documentelement.scrollleft == 0) document.body.scrollleft+= Move_s; return false;}//This is a function that adds monitoring methods to the object function objAddEvent(oEle, sEventName, fnHandler){if(oEle.attachEvent) oEle.attachEvent('on'+sEventName, fnHandler);else oEle.addEventListener(sEventName, fnHandler, false);} </script></body></html>De hecho, hay un problema con este código. En el navegador Chrome, solo el mouse puede deslizarse en ese color gris. No he resuelto este problema. Si ese experto lo resuelve, puede dejar un mensaje para decirme, gracias.