国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

javascript 實現(xiàn)滾動效果代碼整理

2019-11-21 00:39:41
字體:
供稿:網(wǎng)友
1.先寫兩個最常用最簡潔的滾動代碼
代碼如下:
水平滾動:
<marquee direction="left" align="bottom" height="25" width="100%" onmouseout="this.start()" onmouseover="this.stop()" scrollamount="2" scrolldelay="1">水平滾動字幕內(nèi)容</marquee>
垂直滾動:
<marquee direction="up" height="200" onmouseout="this.start()" onmouseover="this.stop()" scrollAmount="1" scrollDelay="1">垂直滾動字內(nèi)容</marquee>
2.平穩(wěn)不間斷滾動
復(fù)制代碼 代碼如下:

<SCRIPT LANGUAGE="JavaScript">
var tm=null
function newsScroll() {
var scrollimg=document.getElementById("scroll")
if(scrollimg.parentNode.scrollTop!=(scrollimg.clientHeight/2))
scrollimg.parentNode.scrollTop++;
else
scrollimg.parentNode.scrollTop=0
}
window.onload=function() {
tm=setInterval('newsScroll()',25)
}
function stop()
{
clearInterval(tm)
}
function start()
{
tm=setInterval('newsScroll()',25)
}
</SCRIPT>
/* stop() start() 不能和調(diào)用ID在同一個容器內(nèi), 如容器沒默認(rèn)高度 要制定高度*/

3 有停留滾動
代碼示例:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]

4:一個簡單的滾動代碼學(xué)習(xí)制作示例

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]

Js代碼說明:
JavaScript代碼:
復(fù)制代碼 代碼如下:

var s,sn=0,timer,slen,timer2;
//初始化設(shè)置
function scrollInit(){
s=getid("s1"); //獲取需要滾動內(nèi)容的對象
s.scrollTop=0; //初始化滾動位置
slen=s.innerHTML.split("|"); //獲取滾動內(nèi)容,并存入數(shù)組,以便顯示調(diào)用
s.innerHTML=""; //清空滾動對象內(nèi)容
for(var i=0;i<slen.length;i++){s.innerHTML+=(slen[i]+"<br />");} //格式化輸出滾動內(nèi)容
s.innerHTML+=slen[0];
timer2=setInterval(scrollstart,3000); //開始滾動
s.onmouseover=function(){clearInterval(timer2);clearInterval(timer);s.style.backgroundColor="#ccc";} //鼠標(biāo)經(jīng)過,停止?jié)L動,改變樣式
s.onmouseout=function(){timer2=setInterval(scrollstart,3000);s.style.backgroundColor="#fff";} //鼠標(biāo)移開,恢復(fù)滾動
}
//開啟滾動效果
function scrollstart(){
if(s.scrollTop>=(slen.length*20)){s.scrollTop=0;} //滾動內(nèi)容到底時,重置內(nèi)容位置
timer=setInterval(scrollexec,30); //執(zhí)行滾動動畫效果
}
//滾動動畫效果
function scrollexec(){
if(sn<20){
sn++;
s.scrollTop++;
}else{
sn=0;
clearInterval(timer);
}
}
//通過ID獲取對象
function getid(id){return document.getElementById(id);}
//網(wǎng)頁加載后,執(zhí)行初始化
window.onload=scrollInit;

原理解析:
1、首先給容器設(shè)定高度或?qū)挾龋热鏳iv,設(shè)置div高20px;overflow:hidden;
2、容器高度設(shè)定后,內(nèi)容的高度超出20px,超過部分溢出,被隱藏,scrollTop屬性可用,這一點可以用overflow:scroll來看效果;
3、改變?nèi)萜鞯膕crollTop(上下滾動)或scrollLeft(左右滾動)屬性的值,讓內(nèi)容移動位置(滾動的原理);
4、到滾動的高度scrollTop大于或等于內(nèi)容的高度時,設(shè)置scrollTop=0,讓內(nèi)容返回原來的位置,重新開始滾動,無間斷循環(huán)滾動效果就出現(xiàn)了。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄龙县| 定结县| 柳林县| 札达县| 彭水| 潜山县| 保亭| 页游| 册亨县| 古浪县| 固镇县| 万安县| 垣曲县| 金华市| 沙湾县| 得荣县| 开封市| 衡水市| 巩义市| 营口市| 广安市| 察雅县| 鹤岗市| 商水县| 永靖县| 承德县| 沭阳县| 江西省| 竹山县| 云梦县| 鄂州市| 株洲市| 清河县| 册亨县| 鄂伦春自治旗| 会宁县| 宜都市| 政和县| 炉霍县| 晋中市| 桓仁|