Javascript 视差滚动不适用于移动设备
您好,我的网站上有一个视差效果滚动条,它在桌面上运行良好,但在移动设备上,当我尝试向下滚动/滑动页面时,它无法正常工作 下面是javascript:Javascript 视差滚动不适用于移动设备,javascript,jquery,css,parallax,Javascript,Jquery,Css,Parallax,您好,我的网站上有一个视差效果滚动条,它在桌面上运行良好,但在移动设备上,当我尝试向下滚动/滑动页面时,它无法正常工作 下面是javascript: var ticking = false; var isFirefox = /Firefox/i.test(navigator.userAgent); var isIe = /MSIE/i.test(navigator.userAgent) || /Trident.*rv\:11\./i.test(navigator.userAgent); var
var ticking = false;
var isFirefox = /Firefox/i.test(navigator.userAgent);
var isIe = /MSIE/i.test(navigator.userAgent) || /Trident.*rv\:11\./i.test(navigator.userAgent);
var scrollSensitivitySetting = 30;
var slideDurationSetting = 800;
var currentSlideNumber = 0;
var totalSlideNumber = $('.background').length;
function parallaxScroll(evt) {
if (isFirefox) {
delta = evt.detail * -120;
} else if (isIe) {
delta = -evt.deltaY;
} else {
delta = evt.wheelDelta;
}
if (ticking != true) {
if (delta <= -scrollSensitivitySetting) {
ticking = true;
if (currentSlideNumber !== totalSlideNumber - 1) {
currentSlideNumber++;
nextItem();
}
slideDurationTimeout(slideDurationSetting);
}
if (delta >= scrollSensitivitySetting) {
ticking = true;
if (currentSlideNumber !== 0) {
currentSlideNumber--;
}
previousItem();
slideDurationTimeout(slideDurationSetting);
}
}
}
function slideDurationTimeout(slideDuration) {
setTimeout(function () {
ticking = false;
}, slideDuration);
}
var mousewheelEvent = isFirefox ? 'DOMMouseScroll' : 'wheel';
window.addEventListener(mousewheelEvent, _.throttle(parallaxScroll, 60), false);
function nextItem() {
var $previousSlide = $('.background').eq(currentSlideNumber - 1);
$previousSlide.css('transform', 'translate3d(0,-130vh,0)').find('.content-wrapper1').css('transform', 'translateY(40vh)');
currentSlideTransition();
}
function previousItem() {
var $previousSlide = $('.background').eq(currentSlideNumber + 1);
$previousSlide.css('transform', 'translate3d(0,30vh,0)').find('.content-wrapper1').css('transform', 'translateY(30vh)');
currentSlideTransition();
}
function currentSlideTransition() {
var $currentSlide = $('.background').eq(currentSlideNumber);
$currentSlide.css('transform', 'translate3d(0,-15vh,0)').find('.content-wrapper1').css('transform', 'translateY(15vh)');
;
}
var ticking=false;
var isFirefox=/Firefox/i.test(navigator.userAgent);
变量isIe=/MSIE/i.test(navigator.userAgent)| |/Trident.*rv \:11\/i.test(navigator.userAgent);
var滚动灵敏度设置=30;
var SliderationSetting=800;
var currentSlideEnumber=0;
var totalSlideEnumber=$('.background').length;
函数视差克罗尔(evt){
如果(iFirefox){
delta=evt.详图*-120;
}否则如果(isIe){
delta=-evt.deltaY;
}否则{
delta=电动轮delta;
}
如果(滴答声!=真){
if(增量=滚动灵敏度设置){
滴答声=真;
如果(CurrentSlideEnumber!==0){
当前滑动枚举器--;
}
上一项();
slideDurationTimeout(slideDurationSetting);
}
}
}
函数slideDurationTimeout(slideDuration){
setTimeout(函数(){
滴答声=假;
},滑动教育);
}
var mouseweelevent=isFirefox?'DOMMouseScroll':“wheel”;
window.addEventListener(mouseweelEvent,uu.throttle(视差croll,60),false);
函数nextItem(){
变量$previousSlide=$('.background').eq(currentSlideNumber-1);
$previousSlide.css('transform','translate3d(0,-130vh,0'))。find('content-wrapper1')。css('transform','translateY(40vh)');
currentSlideTransition();
}
函数previousItem(){
变量$previousSlide=$('.background').eq(currentSlideNumber+1);
$previousSlide.css('transform','translate3d(0,30vh,0'))。find('content-wrapper1')。css('transform','translateY(30vh'));
currentSlideTransition();
}
函数currentSlideTransition(){
变量$currentSlide=$('.background').eq(CurrentSlideEnumber);
$currentSlide.css('transform','translate3d(0,-15vh,0')).find('.content-wrapper1').css('transform','translateY(15vh'));
;
}
非常感谢您的帮助,谢谢 任何特定的移动设备,或所有移动设备?都检查过浏览器上的响应模式是否相同?响应模式可以。我只检查了android手机的chrome浏览器