Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 左侧水平滚动条不适用于IE和Edge?_Jquery_Html_Css_Internet Explorer_Microsoft Edge - Fatal编程技术网

Jquery 左侧水平滚动条不适用于IE和Edge?

Jquery 左侧水平滚动条不适用于IE和Edge?,jquery,html,css,internet-explorer,microsoft-edge,Jquery,Html,Css,Internet Explorer,Microsoft Edge,我设计了一个网站,由5个100%宽度的“页面”组成,这些页面水平排列在一起。我已经编写了许多jQuery脚本,允许我从一个“页面”滚动到另一个“页面”。它在Mozilla、Chrome、Safari等浏览器中都能完美运行,但在IE或Edge中却不能。我想知道我的代码的哪些部分在IE和Edge中不能正常工作,以及如何解决这个问题 $(文档).ready(函数(){ 设vh=window.innerHeight*0.01; 设vw=window.innerWidth*0.01; document.

我设计了一个网站,由5个100%宽度的“页面”组成,这些页面水平排列在一起。我已经编写了许多jQuery脚本,允许我从一个“页面”滚动到另一个“页面”。它在Mozilla、Chrome、Safari等浏览器中都能完美运行,但在IE或Edge中却不能。我想知道我的代码的哪些部分在IE和Edge中不能正常工作,以及如何解决这个问题

$(文档).ready(函数(){
设vh=window.innerHeight*0.01;
设vw=window.innerWidth*0.01;
document.documentElement.style.setProperty('--vh','${vh}px`);
document.documentElement.style.setProperty('--vw','${vw}px`);
var maxscroll=($('html')[0].scrollWidth/5)
$('html')。向左滚动(0);
$('html').scrollTop(0);
$('.move')。单击(函数(){
$('.section')。设置动画({
滚动顶部:0
}, 800);
$('.section').css('溢出','隐藏');
})
$(“#移动1”)。单击(函数(){
$('html').stop().animate({
scrollLeft:(maxscroll*0)
},800,函数(){
$('.section:nth child(1)').css('overflow','auto');
});
})
$(“#移动2”)。单击(函数(){
$('html').stop().animate({
向左滚动:(最大滚动*1)
},800,函数(){
$('.section:nth child(2)').css('overflow','auto');
});
})
$(“#移动3”)。单击(函数(){
$('html').stop().animate({
向左滚动:(最大滚动*2)
},800,函数(){
$('.section:nth child(3)').css('overflow','auto');
});
})
$(“#移动4”)。单击(函数(){
$('html').stop().animate({
向左滚动:(最大滚动*3)
},800,函数(){
$('.section:nth child(4)').css('overflow','auto');
});
})
$(“#移动5”)。单击(函数(){
$('.arrow right').hide();
$('html').stop().animate({
向左滚动:(最大滚动*4)
},800,函数(){
$('.section:nth child(5)').css('overflow','auto');
});
})
})
正文{
背景色:黑色;
保证金:0;
填充:0;
高度:100vh;
/*不支持自定义属性的浏览器的回退*/
高度:计算值(var(--vh,1vh)*100);
溢出:隐藏;
}
导航移动器{
显示:块;
位置:固定;
宽度:100%;
排名:0;
z指数:31;
}
李,走吧{
利润率:20px;
颜色:白色;
光标:指针;
显示:内联块;
}
移动:悬停{
字体大小:粗体;
}
ul导航{
排名:0;
浮动:对;
右边距:80px;
列表样式类型:无;
}
主要部分覆盖{
位置:相对位置;
宽度:100vw;
宽度:计算值(var(--vw,1vw)*500);
显示:内联块;
}
节{
位置:相对位置;
宽度:100vw;
宽度:计算值(var(--vw,1vw)*100);
高度:100vh;
高度:计算值(var(--vh,1vh)*100);
显示:内联块;
溢出:自动;
背景色:黑色;
}
#s1{
背景色:黑色;
}
#s2{
背景颜色:绿色;
}
#s3{
背景色:红色;
}
#s4{
背景颜色:蓝色;
}
#s5{
背景颜色:黄色;
}

    黑色(1) 绿色(2) 红色(3) 蓝色(4) 黄色(5)
  • 在设置动画时,需要使用
    $('html,body')
    而不是
    $('html')
    使其在Edge中工作
  • 带有CSS变量的嵌套calc()是。您的“不支持自定义属性的浏览器的回退”是错误的。应
    宽度:1000vw在主.sectionOverlay{}和
    宽度:200vw节中。节{}

  • 更改脚本的第一部分,使其在IE中工作:


  • 谢谢你的回答。在Edge中工作,但仍然不会在IE中改变这些更改。@CoopDaddio,你的IE版本是什么?请检查并运行IE中的代码:。它可以在我的IE 11.116.18362.0中正常工作
         var vh = window.innerHeight * 0.01;
         var vw = window.innerWidth * 0.01;
         document.documentElement.style.setProperty('--vh', vh.toString() + "px");
         document.documentElement.style.setProperty('--vw', vw.toString() + "px");