今日は何かを手に入れました。ページはもともと水平であったため、下部に水平スクロールバーがあり、垂直にスクロールバーがありませんでした。これで、マウスプーリーが左右にスクロールする必要があります。これには、JSコードを作成するために記述する必要があります。このプロセスを書く際に多くのトラブルに遭遇しました。
IE Firefox Chromeの3つのブラウザによってサポートされている機能は、まったく異なり、クレイジーです。
説明するいくつかの知識ポイントがあります
プーリーイベントを監視します
IE:オンマウスホイール
Firfox:DommouseScroll
クロム:マウスホイール
悲しいかな、言葉を失います
スクロールリターン値も異なります
Firfoxは詳細で +-3を返します
他の人はwheeldeltaを使用して +-120を返します
スクロールの方向を決定するための返品値があります
Chrome Judgement Pageの左ムーブメントに加えて、document.documentlement.scrollleftが一般的なブラウザーに使用されます。
ただし、Chromeブラウザはdocument.body.scrollleftを使用する必要があります
OK、コードは次のように共有されます。
<!doctype html public " - // w3c // dtd xhtml 1.0 transitional // en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns = "http://www.w3.org/1999/xhtml"> <head> <meta http-equiv = "content-type" content = "text/html; charset = utf-8"/> <title> untitled document </title> <body> <div> <div> <div> <div> <div> <div> <div> <div> <div> <div> <div> <div> <div 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_scroll(e); objaddevent(dbody、 'mousewheel'、function(e){return mouse_scroll(e);})function mouse_scroll(e){e = e || window.event; var deld = e.wheeldelta?e.wheeldelta:-e.detail*40; // Judge up and down方向Var Move_s = deld> 0?-50:50; document.documentelement.scrollleft+= move_s; //これを非クロームブラウザに使用する//これをクロムブラウザに使用するif(document.documentelement.scrollleft == 0)document.body.scrollleft+= move_s; false;} //これは、オブジェクト関数に監視方法を追加する関数ですobjaddevent(oele、seventname、fnhandler){if(oele.attachevent)oele.attachevent( '+seventname、fnhandler); else.addeventlistener(seventname、fnhandler、fnhandler、fnhandler、fndeventlistener </script> </body> </html>実際、このコードには問題があります。 Chromeブラウザでは、マウスのみがその灰色でスライドできます。私はこの問題を解決していません。その専門家がそれを解決した場合、あなたは私に伝えるためにメッセージを残すことができます、ありがとう。