Javascript网页滚动方法
生活随笔
收集整理的這篇文章主要介紹了
Javascript网页滚动方法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
| Javascript網(wǎng)頁滾動方法 | |
| 作者:不詳 來源于:源碼下載吧 發(fā)布時間:2007-6-6 16:24:26 [ 字體:大 中 小 ] | |
| ? | |
| 我想大家都看過各種各樣的滾動(最常用的就是用在新聞的更新上面),一般情況下只要不是圖片,都是用HTML本身就有提供一個很不錯的滾動標(biāo)記——marquee來完成的(用JS也可以同樣實現(xiàn)這種效果);當(dāng)然并不是說圖片就不能那樣做。 以下為marquee的一些基本的參數(shù): 該標(biāo)記語法格式如下:? <marquee? aligh=left|center|right|top|bottom bgcolor=#n? direction=left|right|up|down? behavior=type? height=n? hspace=n? scrollamount=n? Scrolldelay=n? width=n? VSpace=n? loop=n>內(nèi)容</marquee> 下面解釋一下各參數(shù)的含義:? align:是設(shè)定活動字幕的位置,除了居左、居中、居右三種位置外,又增加靠上(top)和靠下(bottom)兩種位置。? Bgcolor:用于設(shè)定活動字幕的背景顏色,可以使用英文的單詞也可以是十六進制數(shù)的。? Direction:用于設(shè)定活動字幕的滾動方向是向左(left)、向右(right)、向上(up)、向下(down)。? Behavior:用于設(shè)定滾動的方式,主要由三種方式: behavior="scroll"表示由一端滾動到另一端; behavior="slide":表示由一端快速滑動到另一端,且不再重復(fù); behavior="alternate"表示在兩端之間來回滾動。? Height:用于設(shè)定滾動字幕的高度。? Width:則設(shè)定滾動字幕的寬度。? Hspace和vspace:分別用于設(shè)定滾動字幕的左右邊框和上下邊框的寬度。? Scrollamount:用于設(shè)定活動字幕的滾動距離。數(shù)值越小,滾動的速度就越快。? scrolldelay:用于設(shè)定滾動兩次之間的延遲時間,數(shù)值越小,間隔就越小。? Loop:用于設(shè)定滾動的次數(shù),當(dāng)loop=-1表示一直滾動下去,直到頁面更新。其中默認(rèn)情況是向左滾動無限次,字幕高度是文本高度;滾動范圍:水平滾動的寬度是當(dāng)前位置的寬度;垂直滾動的高度是當(dāng)前位置的高度。 現(xiàn)在要介紹的是一種新型的滾動,利用JS的方法來做字幕的滾動:向上,在中間停頓一到兩秒(就像經(jīng)典的這種): 將以下代碼貼到您要顯示的位置就可以了: <script> var?marqueeContent=new?Array();?//定義一個數(shù)組,用來存放顯示內(nèi)容 marqueeContent[0]='<A?href="#"?οnclick="reinitMarquee()">刷新最新列表</FONT></A>'; marqueeContent[1]='<a?href=http://www.blueidea.com/updatelist.asp?target=_blank>站點最新更新六十條</a>'; marqueeContent[2]='<A?href=http://www.blueidea.com/tech/graph/2003/875.asp?target=_blank>羽毛效果制作教程</a>'; marqueeContent[3]='<A?href=http://www.blueidea.com/tech/program/2003/831.asp?target=_blank>MySQL&ASP</a>'; marqueeContent[4]='<A?href=http://www.blueidea.com/tech/web/2003/874.asp?target=_blank>初步了解CSS3</a>'; marqueeContent[5]='<A?href=http://www.blueidea.com/tech/graph/2003/864.asp?target=_blank>Fireworks?MX?2004執(zhí)行面版操作</a>'; marqueeContent[6]='<A?href=http://www.blueidea.com/tech/graph/2003/872.asp?target=_blank>Fireworks?MX?2004等高漸變填充</a>'; marqueeContent[7]='<A?href=http://www.blueidea.com/photo/gallery/2003/873.asp?target=_blank>瓶子里的花</a>'; marqueeContent[8]='<A?href=http://www.blueidea.com/tech/graph/2003/871.asp?target=_blank>Fireworks?MX?實現(xiàn)選項卡式效果</a>'; marqueeContent[9]='<A?href=http://www.blueidea.com/photo/gallery/2003/870.asp?target=_blank>情侶:黑白的愛情空氣</a>'; marqueeContent[10]='<A?href=http://www.blueidea.com/tech/graph/2003/866.asp?target=_blank>制作?MAC?風(fēng)格的蘋果標(biāo)志</a>'; marqueeContent[11]='<A?href=http://www.blueidea.com/tech/graph/2003/868.asp?target=_blank>蛋殼制作及破殼而出的人物合成</a>'; var?marqueeInterval=new?Array();?//定義一些常用而且要經(jīng)常用到的變量 var?marqueeId=0; var?marqueeDelay=4000; var?marqueeHeight=16; //接下來的是定義一些要使用到的函數(shù) Array.prototype.random=function()?{ var?a=this; var?l=a.length; for(var?i=0;i<l;i?)?{ var?r=Math.floor(Math.random()*(l-i)); a=a.slice(0,r).concat(a.slice(r?1)).concat(a[r]); } return?a; } function?initMarquee()?{ marqueeContent=marqueeContent.random(); var?str=''; for(var?i=0;i<Math.min(3,marqueeContent.length);i?)?str?=(i>0?' ':'')?marqueeContent; document.write('<div?id=marqueeBox?style="overflow:hidden;height:'?marqueeHeight?'px"?οnmοuseοver="clearInterval(marqueeInterval[0])"?οnmοuseοut="marqueeInterval[0]=setInterval(\'startMarquee()\',marqueeDelay)"><div>'?str?'</div></div>'); marqueeId?=2; if(marqueeContent.length>3)marqueeInterval[0]=setInterval("startMarquee()",marqueeDelay); } function?reinitMarquee()?{ js_scroll_content.src='scroll_content2.js'; marqueeContent=marqueeContent.random(); var?str=''; for(var?i=0;i<Math.min(3,marqueeContent.length);i?)?str?=(i>0?' ':'')?marqueeContent; marqueeBox.childNodes[(marqueeBox.childNodes.length==1?0:1)].innerHTML=str; marqueeId=2; } function?startMarquee()?{ var?str=''; for(var?i=0;(i<3)&&(marqueeId?i<marqueeContent.length);i?)?{ str?=(i>0?' ':'')?marqueeContent[marqueeId?i]; } marqueeId?=3; if(marqueeId>marqueeContent.length)marqueeId=0; if(marqueeBox.childNodes.length==1)?{ var?nextLine=document.createElement('DIV'); nextLine.innerHTML=str; marqueeBox.appendChild(nextLine); } else?{ marqueeBox.childNodes[0].innerHTML=str; marqueeBox.appendChild(marqueeBox.childNodes[0]); marqueeBox.scrollTop=0; } clearInterval(marqueeInterval[1]); marqueeInterval[1]=setInterval("scrollMarquee()",20); } function?scrollMarquee()?{ marqueeBox.scrollTop?; if(marqueeBox.scrollTop%marqueeHeight==(marqueeHeight-1)){ clearInterval(marqueeInterval[1]); } } initMarquee(); </script> | |
轉(zhuǎn)載于:https://www.cnblogs.com/beyond0309/archive/2008/03/29/1129011.html
總結(jié)
以上是生活随笔為你收集整理的Javascript网页滚动方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: substring和charindex的
- 下一篇: Javascript--Boolean运