這篇文章主要介紹了JS基于MSClass和setInterval實(shí)現(xiàn)ajax定時(shí)采集信息并滾動(dòng)顯示的方法,涉及JavaScript頁面元素定時(shí)滾動(dòng)操作及ajax調(diào)用實(shí)現(xiàn)技巧,需要的朋友可以參考下
本文實(shí)例講述了JS基于MSClass和setInterval實(shí)現(xiàn)ajax定時(shí)采集信息并滾動(dòng)顯示的方法。分享給大家供大家參考,具體如下:
setTimeout 用于延時(shí)器,只執(zhí)行一次.
setInterval:用于多次執(zhí)行.
項(xiàng)目中引用到j(luò)query.timers-1.2.js定時(shí)器,并且MSClass做信息定期滾動(dòng),每3分鐘執(zhí)行一次,執(zhí)行三次左右,滾動(dòng)的次數(shù)越來越快,原因在于timers和MSClass都用了setInterval,
都會(huì)再次添加一個(gè)setInterval,最后導(dǎo)致幾個(gè)setInterval并發(fā)執(zhí)行了,所以速度很快,需要在調(diào)用的時(shí)候clearInterval上次的setInterval ,或者引用MSClass作者的原方法。
//定時(shí)器先執(zhí)行 銷毀實(shí)例
var Marquee1 = new Marquee(["div1", "Content"])
function Marquee_everyTime() {
Marquee1.Destroy(); //銷毀實(shí)例應(yīng)用
GetMarqueeInfo(); //然后ajax采集需要的信息數(shù)據(jù)。
}
//ajax方法
function GetMarqueeInfo() {
LG.ajax({
type: 'AjaxOther',
method: 'GetMarqueeInfo',
success: function (data, tipsContent) {
$("#Content").html("");
$("#Content").html(tipsContent);
//大容器| 小容器 |滾動(dòng)的方向 |滾動(dòng)的速度 | 大容器的寬度 | 大容器的高度 | 滾動(dòng)休息時(shí)間 | 滾動(dòng)休息時(shí)間 | 滾動(dòng)結(jié)束時(shí)間
Marquee1.Direction = 2;
Marquee1.Step = 0.4;
Marquee1.Width = 640;
Marquee1.Height = 30;
Marquee1.Timer = 20;
Marquee1.DelayTime = 4000;
Marquee1.WaitTime = 3000;
Marquee1.ScrollStep = 320;
Marquee1.Start();
},
error: function () {
LG.tip('信息加載失敗.');
}
});
}
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。