如何使用javascript平滑地向下滚动页面
如何使用javascript平滑地向下滚动页面,javascript,Javascript,函数scrollWin(){ setInterval(函数(){for(var i=0;i
函数scrollWin(){
setInterval(函数(){for(var i=0;i<1250;i++){
滚动到(0,i);}},3);
}
li{
浮动:左;
列表样式:无;
利润率:10px;
}
.重置{
明确:两者皆有;
}
div{
宽度:500px;
高度:600px;
背景颜色:蓝色;
利润率:20px;
}
- 家
- 关于
- 侧面图
- 接触
关于
我正在用php编写一个示例代码,如果循环第二次运行,滚动条就会出现,就像我希望你问的问题一样。
因此,首先定义一个变量,然后在循环中增加它,如下所示:
<?php
$i=1;
for(condition;condition;condition){
//your code here
$i++;
}
if($i<1){
echo '<script>
$(".yourdivclass").css("overflow","scroll");
</script>';
}
?>
这一点JavaScript应该能很好地执行您的要求。我有一把小提琴,我把它作为一个使用示例。请检查一下,如果有任何问题请告诉我
功能平滑滚动(x,y){
var b=document.body;
var xIncrement=1;
var yIncrement=1;
var scrollY=函数(){
i增量+=1;
window.scroll(b.scrollLeft,b.scrollTop+yIncrement);
如果(b.滚动顶部0){
卷轴();
}
如果(x>0){
scrollX();
}
}
我们还需要更多。事实上,我不认为你知道你在问什么。JQuery已经有了一个滚动方法,JQuery的简化使它更加有趣。在做你自己的之前,先试试这些。我认为你不理解JavaScript中异步编程的本质。请参阅下面我的答案,并在此处阅读有关JavaScript的更多信息:
function smoothScroll(x, y) {
var b = document.body;
var xIncrement = 1;
var yIncrement = 1;
var scrollY = function () {
yIncrement += 1;
window.scroll(b.scrollLeft, b.scrollTop + yIncrement);
if (b.scrollTop < y) {
if (requestAnimationFrame) {
requestAnimationFrame(scrollY);
} else {
setTimeout(scrollY, 15);
}
}
};
var scrollX = function () {
xIncrement += 1;
window.scroll(b.scrollLeft + xIncrement, b.scrollTop);
if (b.scrollLeft < x) {
if (requestAnimationFrame) {
requestAnimationFrame(scrollX);
} else {
setTimeout(scrollX, 15);
}
}
};
if (y > 0) {
scrollY();
}
if (x > 0) {
scrollX();
}
}