我正在开发一个水平的网站,可以使我的鼠标滚动到左右滚动…
我的jQuery包含序列:
<script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/jquery-1.11.1.js"></script> <!--jquery validation script--> <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script> <!--Smooth Scroll--> <script type="text/javascript" src="js/jquery.easing.1.3.js"></script>
我的代码如下:
<script type="text/javascript" src="js/jquery.mousewheel.min.js"></script> <script> $.noConflict(); $(function() { $("body").mousewheel(function(event,delta) { this.scrollLeft -= (delta * 30); event.preventDefault(); }) }) $(function() {...}); $(document).ready(function() { $('#form').validate({...}); $("#submit").click(function() {...}); }) </script>
我的“body”CSS如下:
html { width:100%; overflow-y:hidden; overflow-x: scroll; } body{ }
对于现在,我怀疑的代码是:
<!--Smooth Scroll--> <script type="text/javascript" src="js/jquery.easing.1.3.js"></script>
这是用鼠标滚动我想的崩溃.
鼠标滚动正在工作,唯一的问题是鼠标滚动不顺畅,有时候停在那里,有时甚至不能移动,不是我的鼠标问题.我不知道是什么原因,因为我试图调试2天已经.任何人在这个问题上分享他们的想法?
我一直在寻找解决方案,但在我的情况下看起来很奇怪.滚动到某一部分,并在中间卡住. (只是滚动条.)我在Mac上使用Chrome进行测试. Btw有任何解决方案,如AutoShift滚动,因为这是为我工作,当我按Shift按钮.
解决方法
经过3天的搜索,我终于找到了一个没有Jquery插件的
solution!
// http://www.dte.web.id/2013/02/event-mouse-wheel.html (function() { function scrollHorizontally(e) { e = window.event || e; var delta = Math.max(-1,Math.min(1,(e.wheelDelta || -e.detail))); document.documentElement.scrollLeft -= (delta*40); // Multiplied by 40 document.body.scrollLeft -= (delta*40); // Multiplied by 40 e.preventDefault(); } if (window.addEventListener) { // IE9,Chrome,Safari,Opera window.addEventListener("mousewheel",scrollHorizontally,false); // Firefox window.addEventListener("DOMMouseScroll",false); } else { // IE 6/7/8 window.attachEvent("onmousewheel",scrollHorizontally); } })();
如果这段代码仍然无法运行,问题不在这里,它在你的CSS中.