跨浏览器鼠标滚轮,通过一个滚轮滚动100%的浏览器高度
cross browser mouse wheel, to scroll 100% browser height by one single wheel
有一些js
$(document).ready(function(){
var winHeight = window.innerHeight ?
function() {
return window.innerHeight;
} :
function() {
return document.documentElement.clientHeight;
};
$('.first-block').height(winHeight);
$(window).scroll(function(){
var firstBlockHeight = winHeight();
var scrollTop= $('body').scrollTop();
if (scrollTop > 0 && scrollTop < firstBlockHeight/2 && $('body').hasClass('scrolled') === false) {
$("body")
.animate({ scrollTop: firstBlockHeight+10 }, 600)
.addClass('scrolled');
} else if (scrollTop==0) {
$("body")
.animate({ scrollTop: 0 }, 600)
.removeClass('scrolled');
}
});
});
通过单个鼠标滚轮滚动第一个块100%的高度。这段代码不能在firefox中工作。如果玩滚动也会有bug。请帮助解决这个问题,并添加跨浏览器支持。请参阅JsFiddle
谢谢。
我使用mouswheel.js,我做到了!:)可能对某人有用
$(document).ready(function(){
var winHeight = window.innerHeight ?
function() {
return window.innerHeight;
} :
function() {
return document.documentElement.clientHeight;
};
$('.first-block').height(winHeight);
var BlockHeight = $('.first-block').height();
$.browser = {};
$.browser.mozilla = /mozilla/.test(navigator.userAgent.toLowerCase()) && !/webkit/.test(navigator.userAgent.toLowerCase());
if($.browser.mozilla)
{
var ScrollType = 'html';
}
else
{
var ScrollType = 'body';
}
$('.first-block').mousewheel(function(event, delta, deltaX, deltaY) {
if((delta<0) && ($(ScrollType).scrollTop()==0)) $(ScrollType).animate({ scrollTop: BlockHeight- 104 }, 600);
});
$(ScrollType).keydown(function(event){
if((event.keyCode==40) && ($(ScrollType).scrollTop()==0)) $(ScrollType).animate({ scrollTop: BlockHeight-104 }, 600);
})
});
谢谢我)
相关文章:
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- 是否可以创建一个带有进度条的跨浏览器AJAX照片上传器
- 如何从浏览器中获取cookie,从另一个应用程序中删除
- 使用一个Javascript函数提交多个表单可以在FF中工作,而不需要其他浏览器
- 我创建了一个Javascript待办事项列表,但想知道如何在浏览器刷新后保留这些帖子
- 在我的浏览器中用类似ctrl+s的PhantomJS保存一个网站
- 为什么这会造成一个无休止的循环并使我的浏览器崩溃
- 从imgur api的另一个浏览器拖放图像
- JavaScript 不适用于 IE9,但每隔一个浏览器?怎么了
- 接受从另一个浏览器窗口拖放图像
- 制作一个阻止存储在浏览器历史记录中的网页
- 在浏览器关闭时,单击确认对话框中的“停留在页面上”,执行一个方法
- 我如何生成一个警告/弹出窗口,说明在用户点击之前避免点击浏览器的后退按钮
- Android 4.4.x WebView在使用location.reload()时会在浏览器中打开一个选项卡
- 将键盘和鼠标事件从一个浏览器选项卡发送到另一个
- 浏览器同步摄像头加速视频播放不是一个功能
- 从另一个浏览器访问一个浏览器中的html文档
- 如何在jQuery/Javascript中使用OOP来传递一个跨浏览器兼容的值
- 我无法编写或找到一个JavaScript示例,该示例将显示在我的任何浏览器中
- 给我的浏览器一个可通过javascript访问的全局变量