Js打字机效果: var NewsNum;
var AddNum;
var TotalNum;
var CurrentPosion = 0;
var CurrentNews;
var CurrentLength;
var NewsText;
var TargetLink;
var CharacterTimeout;
var NewsTimeout = 3000; /* 新闻间隔 Time */
var BrowserVersion;
var WidgetOne;
var WidgetTwo;
var SpaceFiller;
var LeadString;
var NewsState;function StartTicker(){
/* 设置初始数值 Establishes the initial value */
CharacterTimeout = 0; /* 字符间隔时间 */
NewsTimeout = 3000; /* 新闻间隔 Time */
WidgetOne = "_"; /* 新闻前面下标符1 */
WidgetTwo = "_"; /* 新闻前面下标符 */
NewsState = 1;
// NewsNum = document.body.children.Incoming.children.NewsNum.innerText; /* 新闻总条数 */
NewsNum = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AllNews.children.length; /* 新闻总条数 */
AddNum = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AddNews.children.length; /* 补充条数 */
TotalNum = NewsNum + AddNum;
CurrentNews = 0;
CurrentLength = 0;
LeadString = " ";
SpaceFiller = " ";
RunTheTicker();
}function RunTheTicker(){
// --- 基础函数
if( NewsState == 1 ){
if( CurrentPosion < NewsNum ){
SetupNextNews();
}else{
SetupAddNews();
}
CurrentPosion ++;
if( CurrentPosion >= TotalNum || CurrentPosion >= 5 ){
CurrentPosion = 0; /* 最多条数不超过5条 Most strip number does not surpass 5 */
}
} if( CurrentLength != NewsText.length ){
DrawNews();
}else{
CloseOutNews();
}
}function SetupNextNews(){
// --- 跳转下一条新闻
NewsState = 0;
CurrentNews = CurrentNews % NewsNum;
NewsText = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AllNews.children[CurrentNews].children.Summary.innerText;
TargetLink = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AllNews.children[CurrentNews].children.NewsLink.innerText;
CurrentLength = 0;
document.all.HotText.href = TargetLink;
CurrentNews ++;
}function SetupAddNews(){
NewsState = 0;
CurrentNews = CurrentNews % AddNum;
NewsText = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AddNews.children[CurrentNews].children.Summary.innerText;
TargetLink = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AddNews.children[CurrentNews].children.NewsLink.innerText;
CurrentLength = 0;
document.all.HotText.href = TargetLink;
CurrentNews ++;
} function DrawNews(){
// --- 滚动新闻
var MyWidget;
if( ( CurrentLength % 2 ) == 1 ){
MyWidget = WidgetOne;
}else{
MyWidget = WidgetTwo;
}
document.all.HotText.innerHTML = LeadString + NewsText.substring(0,CurrentLength) + MyWidget + SpaceFiller;
CurrentLength ++;
setTimeout( "RunTheTicker()", CharacterTimeout );
}function CloseOutNews(){
// --- 结束新闻循环
document.all.HotText.innerHTML = LeadString + NewsText + SpaceFiller;
NewsState = 1;
setTimeout("RunTheTicker()", NewsTimeout);
}
var AddNum;
var TotalNum;
var CurrentPosion = 0;
var CurrentNews;
var CurrentLength;
var NewsText;
var TargetLink;
var CharacterTimeout;
var NewsTimeout = 3000; /* 新闻间隔 Time */
var BrowserVersion;
var WidgetOne;
var WidgetTwo;
var SpaceFiller;
var LeadString;
var NewsState;function StartTicker(){
/* 设置初始数值 Establishes the initial value */
CharacterTimeout = 0; /* 字符间隔时间 */
NewsTimeout = 3000; /* 新闻间隔 Time */
WidgetOne = "_"; /* 新闻前面下标符1 */
WidgetTwo = "_"; /* 新闻前面下标符 */
NewsState = 1;
// NewsNum = document.body.children.Incoming.children.NewsNum.innerText; /* 新闻总条数 */
NewsNum = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AllNews.children.length; /* 新闻总条数 */
AddNum = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AddNews.children.length; /* 补充条数 */
TotalNum = NewsNum + AddNum;
CurrentNews = 0;
CurrentLength = 0;
LeadString = " ";
SpaceFiller = " ";
RunTheTicker();
}function RunTheTicker(){
// --- 基础函数
if( NewsState == 1 ){
if( CurrentPosion < NewsNum ){
SetupNextNews();
}else{
SetupAddNews();
}
CurrentPosion ++;
if( CurrentPosion >= TotalNum || CurrentPosion >= 5 ){
CurrentPosion = 0; /* 最多条数不超过5条 Most strip number does not surpass 5 */
}
} if( CurrentLength != NewsText.length ){
DrawNews();
}else{
CloseOutNews();
}
}function SetupNextNews(){
// --- 跳转下一条新闻
NewsState = 0;
CurrentNews = CurrentNews % NewsNum;
NewsText = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AllNews.children[CurrentNews].children.Summary.innerText;
TargetLink = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AllNews.children[CurrentNews].children.NewsLink.innerText;
CurrentLength = 0;
document.all.HotText.href = TargetLink;
CurrentNews ++;
}function SetupAddNews(){
NewsState = 0;
CurrentNews = CurrentNews % AddNum;
NewsText = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AddNews.children[CurrentNews].children.Summary.innerText;
TargetLink = document.body.children.Content.children.Tbody.children.MainContent.children.Announcement.children.Incoming.children.AddNews.children[CurrentNews].children.NewsLink.innerText;
CurrentLength = 0;
document.all.HotText.href = TargetLink;
CurrentNews ++;
} function DrawNews(){
// --- 滚动新闻
var MyWidget;
if( ( CurrentLength % 2 ) == 1 ){
MyWidget = WidgetOne;
}else{
MyWidget = WidgetTwo;
}
document.all.HotText.innerHTML = LeadString + NewsText.substring(0,CurrentLength) + MyWidget + SpaceFiller;
CurrentLength ++;
setTimeout( "RunTheTicker()", CharacterTimeout );
}function CloseOutNews(){
// --- 结束新闻循环
document.all.HotText.innerHTML = LeadString + NewsText + SpaceFiller;
NewsState = 1;
setTimeout("RunTheTicker()", NewsTimeout);
}
document.write("<div id='TextSliderPLayer_"+ className +"'><div id='TextSliderLayer_"+ className +"'></div></div>");
this.item = [];
this.width = this.height = this.speed = this.pixel = this.interval = this.size = this.moveCount = this.X = this.Y = 0;
this.direction = "";
this.pLayer = document.getElementById("TextSliderPLayer_" + className);
this.layer = document.getElementById("TextSliderLayer_" + className);
this.align = "left";
this.intervalId = null;
this.className = className;
this.isPause = false;
}TextSlider.prototype.init = function(){
with (this.pLayer.style){
width = this.width + "px";
height = this.height + "px";
overflow = "hidden";
} with (this.layer.style){
width = this.direction == 'up' || this.direction == 'down' ? this.width + "px" : this.size * ( this.item.length + 1 ) + "px";
height = this.direction == 'up' || this.direction == 'down' ? this.size * (this.item.length + 1 ) + "px" : this.height + "px";
top = 0;
left = 0;
position = "relative";
} for ( var i = 0; i < parseInt( this.height / this.size, 10 ) + 1; i++ )
this.item[this.item.length] = this.item[i];
switch (this.direction){
case "up" : this.X = this.Y = 0; break;
} var __html = "<div onmouseover='"+this.className+".pause()' onmouseout='" + this.className + ".unpause()'>";
if ( this.direction == 'up' || this.direction == 'down' ){
__html += "<table width='"+ this.layer.style.width +"' cellspacing='0' cellpadding='0' border='0'>";
for ( var i in this.item )
__html += "<tr><td height='" + this.size + "' style='overflow:hidden' align='" + this.align + "' valign = 'top'>" + this.item[i] + "</td></tr>";
__html += "</table>";
}else{
__html += "<table cellspacing='0' cellpadding='0' border='0'><tr>";
for ( var i in this.item )
__html += "<td width='" + this.size + "' height='" + this.layer.style.height + "' align='" + this.align + "' \ valign = 'top' style='overflow:hidden;'>" + this.item[i] + "</td>";
__html += "</tr></table>";
}
__html += "</div>";
this.layer.innerHTML = __html;
this.start();
}TextSlider.prototype.start = function(){
this.intervalId = setInterval(this.className+".move()", this.speed);
}TextSlider.prototype.move = function(){
if ( this.isPause ) return;
switch (this.direction){
case "up" : this.Y -= this.pixel; break;
} if ( this.direction == 'up' || this.direction == 'down' ){
if ( Math.abs( this.Y ) % this.size == 0 ) this.stop();
this.layer.style.top = this.Y;
}else{ if ( Math.abs( this.X ) % this.size == 0 ) this.stop();
this.layer.style.left = this.X;
}
} TextSlider.prototype.stop = function(){
clearInterval( this.intervalId );
switch (this.direction){
case "up":
if (Math.abs( this.Y ) >= parseInt(this.layer.style.height,10) - this.size) this.Y = this.layer.style.top = 0;
break; }
setTimeout( this.className + ".start()", this.interval );
}TextSlider.prototype.pause = function(){
this.isPause = true;
}TextSlider.prototype.unpause = function(){
this.isPause = false;
}
var event_content = new TextSlider('event_content');
event_content.item[0] = "<div>中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国</DIV>"
event_content.item[1] = "<div>中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国</DIV>"
event_content.item[2] = "<div>中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国</DIV>"
event_content.item[3] = "<div>中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国</DIV>"
event_content.width = 600; // 宽度
event_content.height = 21; // 高度
event_content.speed = 30; // 速度
event_content.pixel = 1; // 滚动条数
event_content.interval = 3000; // 间隔时间
event_content.size = 22; // 行间距
event_content.direction = 'up'; // 滚动方向
event_content.init(); // 执行