ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript はシームレスな上下スクロール効果を実装します_JavaScript スキル

JavaScript はシームレスな上下スクロール効果を実装します_JavaScript スキル

WBOY
リリース: 2016-05-16 15:25:23
オリジナル
1459 人が閲覧しました

この記事の例では、シームレスな上下スクロールを実現するための JavaScript のコードを説明しており、具体的な内容は次のとおりです。

シームレスな上下スクロールを実現するための js の原理 は次のとおりです:
1. まずコンテナの高さまたは幅を設定し、次に overflow:hidden; 2. コンテナの高さを設定した後、それを超えるとコンテンツは非表示になります。
3. コンテナのscrollTop(上下にスクロール)属性の値を変更して、コンテンツを1ノード分上下に移動します(スクロールの原理)。 4. スクロールの高さscrollTopがスクロールされるノードの高さ以上の場合、scrollTop=0を設定し、子ノードツリーの最初のノードを最後に移動し、中断のないループスクロール効果が再開されます。現れる。

レンダリングは次のとおりです:



コードは次のとおりです:

<div id="colee" style="overflow:hidden;height:100px;width:410px;border:1px solid red;">
<div id="colee1">
<p>php</p>
<p>java</p>
<p>ruby</p>
<p>python</p>
<p>www.phpddt.com</p>
</div>
<div id="colee2"></div>
</div>
<script>
//速度设置
var speed=1;
var colee2=document.getElementById("colee2");
var colee1=document.getElementById("colee1");
var colee=document.getElementById("colee");
colee2.innerHTML=colee1.innerHTML; //克隆colee1为colee2
function Marquee1(){
//当滚动至colee1与colee2交界时
if(colee2.offsetTop-colee.scrollTop<=0){
 colee.scrollTop-=colee1.offsetHeight; //colee跳到最顶端
 }else{
 colee.scrollTop++
}
}
var MyMar1=setInterval(Marquee1,speed)//设置定时器
//鼠标移上时清除定时器达到滚动停止的目的
colee.onmouseover=function() {clearInterval(MyMar1)}
//鼠标移开时重设定时器
colee.onmouseout=function(){MyMar1=setInterval(Marquee1,speed)}
</script>
ログイン後にコピー
以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート