⑴ js上下文字滾動,怎麼改成無限循環的,還有就是滾動速度怎麼改
我有一個文字上下無限循環滾動的代碼。。你看看
你也可以去網上搜集一點那種素材。。懶人圖庫 、17素材都有
⑵ js 實現文字多行多列無縫 循環滾動 且帶停頓的
恩,可以網路搜索下「MSClass (Class Of Marquee Scroll通用不間斷滾動JS封裝類)」這個JS封裝類有你要的效果,調用起來也很方便,希望可以幫到你。
⑶ js 無縫滾動只滾動一次
將代碼中的這段代碼
demo2.innerHTML=demo1.innerHTML //克隆demo1為demo2
function Marquee(){
if(demo2.offsetTop-demo.scrollTop<=0) //當滾動至demo1與demo2交界時
demo.scrollTop-=demo1.offsetHeight //demo跳到最頂端
else{
demo.scrollTop++
}
}
改成
function Marquee(){
demo.scrollTop++
}
就可以實現只滾動一次的效果(到達底部的時候不再滾動)
⑷ 一個js文字無縫滾動的問題,這段代碼滾動的原理到底是什麼呀
這段代碼的核心處理是應用setInterval每speed(30)毫秒執行一次頁面更新.
更新的函數是Marquee,通常專執行的是屬demo.scrollTop++,也就是說通常情況下是每30毫秒向下移動一個像素,這樣子連續起來就成了動畫了. 當動畫移動到邊界時,執行的時marquee裡面的另外一個分支,將動畫移動到最初位置.
實現無縫,其實是借用了兩個相同的dom塊(demo1和demo2),兩者同時向下移動,一個移出可視范圍多少,另外一個就移入可是范圍多少.
⑸ javascript實現平滑無縫滾動
本文我們實現純JS方式的滾動廣告效果,供大家參考,具體內容如下
先show一下成品:
首先是網頁樣式:
#demo
{
background:
#FFF;
overflow:hidden;
border:
1px
dashed
#CCC;
width:
1280px;
height:200px;
}
#demo
img
{
border:
3px
solid
#F2F2F2;
}
#indemo
{
float:
left;
width:
800%;
}
#demo1
{
float:
left;
}
#demo2
{
float:
left;
}
布局如下:
<div
id="demo">
<div
id="indemo">
<div
id="demo1">
<a
href="#"><img
src="banner.jpg"
border="0"
/></a>
<a
href="#"><img
src="banner2.jpg"
border="0"
/></a>
</div>
<div
id="demo2"></div>
</div>
</div>
具體的JS實現:
<script>
var
speed=10;
var
tab=document.getElementById("demo");
var
tab1=document.getElementById("demo1");
var
tab2=document.getElementById("demo2");
tab2.innerHTML=tab1.innerHTML;
function
Marquee(){
if(tab2.offsetWidth-tab.scrollLeft==0)
tab.scrollLeft-=tab1.offsetWidth
else{
tab.scrollLeft++;
}
}
var
MyMar=setInterval(Marquee,speed);
tab.onmouseover=function()
{clearInterval(MyMar)};
tab.onmouseout=function()
{MyMar=setInterval
(Marquee,speed)};
</script>
這里要注意的是:
scrollLeft代表頁面利用滾動條滾動到右側時,隱藏在滾動條左側的頁面的寬度。
offsetWidth
是對象的可見寬度,包滾動條等邊線,會隨窗口的顯示大小改變。
setInterval()
方法可按照指定的周期(以毫秒計)來調用函數或計算表達式。setInterval()
方法會不停地調用函數,直到
clearInterval()
被調用或窗口被關閉。
明白了這個具體的實現就好理解了。
實現的原理是這樣的:首先將需要滾動的內容復制一份。當右側的div顯示的內容與左側影藏的內容寬度相同時將父容器左側影藏的內容顯示出來,這樣就實現了將左側影藏的內容顯示出來同時將右側內容重新隱藏。如果右側內容顯示的部分少於左側影藏的內容就繼續講父容器想左側移動,實現隱藏。其中有一點需要注意的是,由於這里是將兩張圖片同時放入左側,當右側顯示了一半時會將左側影藏的完全顯示出來,又因為右側顯示的內容與左側的左邊內容相同所以實現了循環滾動的效果。
這樣平滑的滾動就實現了。
以上就是本文的全部內容,希望對大家的學習有所幫助。
⑹ JS和CSS中關於無縫滾動的問題
因為#scroll和#wrap上面都有一些關鍵樣式,尤其的#scroll js事件就是控制它的。如果真要去一個,要把#wrap的樣式寫到#scroll里,主要相同的樣式別沖突,當然最好是別去掉。
⑺ js滾動文字廣告如何實現
你的意思就是讓文字滾動吧,應該把你要滾動的div加在<marquee direction="up" scrollamount="3" height="100" hspace="2"></marquee>中
我把你代碼中body中的內容修改一下:
<div class="fleft">
<div class="listscroll">
<div id="listcontent">
<marquee direction="up" scrollamount="3" height="100" hspace="2">
<div class="listpro">
<label id="msg1"></label>
</div>
</marquee>
<marquee direction="up" scrollamount="3" height="100" hspace="2">
<div class="listpro">
<label id="msg2"></label>
</div>
</marquee>
<marquee direction="up" scrollamount="3" height="100" hspace="2">
<div class="listpro">
<label id="msg3"></label>
</div>
</marquee>
</div>
</div>
</div>
應該是可以滾動了
請參考
⑻ 求一段簡單的js無縫滾動的代碼!!!
<MARQUEE behavior="scroll" contenteditable="true" onstart="this.firstChild.innerHTML+=this.firstChild.innerHTML;" scrollamount="3" width="100"><SPAN unselectable="on"></SPAN></MARQUEE>
<DIV id="scrollobj" style="white-space:nowrap;overflow:hidden;width:500px;" onmouseover="aa()" onmouseout="b()" >
[CROSSSELLING3]
[CROSSSELLING4]
[CROSSSELLING5]
[CROSSSELLING6]
[CROSSSELLING7]
[CROSSSELLING8]
[CROSSSELLING9]
[CROSSSELLING10]</DIV>
<script language="javascript" type="text/javascript">
<!--
function scroll(obj) {
var tmp = (obj.scrollLeft)++;
//當滾動條到達右邊頂端時
if (obj.scrollLeft==tmp) obj.innerHTML += obj.innerHTML;
//當滾動條滾動了初始內容的寬度時滾動條回到最左端
if (obj.scrollLeft>=obj.firstChild.offsetWidth) obj.scrollLeft=0;
}
var a = setInterval("scroll(document.getElementById('scrollobj'))",20);
function aa(){
clearInterval(a);
}
function b(){
a=setInterval("scroll(document.getElementById('scrollobj'))",10);
}
//-->
</script>
⑼ 使用JS如何實現文字無縫滾動
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<style>
.wrap{width:800px;height:500px;margin:200px auto 0;position: relative;border:1px solid #000;overflow: hidden;}
h1{position: absolute;left:800px;word-break: keep-all;}
</style>
<body>
<div class="wrap">
<h1>這是無縫滾動</h1>
<h1>這是無縫滾動</h1>
</div>
<script>
var wenzi=document.querySelectorAll("h1");
var speed1=0;
var speed2=0;
var flag=false;
setInterval(function(){
speed1-=10;
wenzi[0].style.left=800+speed1+"px";
wenzi[1].style.left=800+speed2+"px";
if(wenzi[0].offsetLeft==0){
flag=true;
}
if(flag){
speed2-=10;
}
if(wenzi[0].offsetLeft==0){
speed2=0;
}
if(wenzi[1].offsetLeft==0){
speed1=0;
}
},60)
</script>
</body>
</html>
純手敲 覺得有用可以點個贊啊
⑽ 怎麼實現marquee標簽的向上無縫滾動
<html>
<head>
<title>TODOsupplyatitle</title>
<metacharset="UTF-8">
<metaname="viewport"content="width=device-width">
</head>
<body>
<style>
#marqueep{height:30px;line-height:30px;margin:0}
</style>
<divstyle="height:30px;overflow:hidden;">
<divid='marquee'>
<p>第1段</p>
<p>第2段</p>
<p>第3段</p>
<p>第4段</p>
<p>第5段</p>
</div>
</div>
<script>
(function(){
varmarquee=document.getElementById('marquee');
varoffset=0;
varscrollheight=marquee.offsetHeight;
varfirstNode=marquee.children[0].cloneNode(true);
marquee.appendChild(firstNode);//還有這里
setInterval(function(){
if(offset==scrollheight){
offset=0;
}
marquee.style.marginTop="-"+offset+"px";
offset+=1;
},50);
})();
</script>
</body></html>
<divid="demo"style="overflow:hidden;height:168px;width:300px;">
<divid="demo1">
<!--此處放要顯示的內容-->
</div>
<divid="demo2"></div>
</div>
<scriptlanguage="javascript">
varspeed=30;
vardemo2=document.getElementByIdx_x("demo2");
vardemo1=document.getElementByIdx_x("demo1");
vardemo=document.getElementByIdx_x("demo");
demo2.innerHTML=demo1.innerHTML;
functionMarquee(){
if(demo2.offsetTop-demo.scrollTop<=0){
demo.scrollTop-=demo1.offsetHeight;
}
else{
demo.scrollTop++;
}
}
varMyMar=setInterval(Marquee,speed);
demo.onmouseover=function(){clearInterval(MyMar)};
demo.onmouseout=function(){MyMar=setInterval(Marquee,speed)};
</script>
——【仙】墨紙