您的位置:首页 > Web前端 > JavaScript

新闻图片切换代码(纯js,no flash)

2009-09-04 16:46 543 查看
<STYLE type=text/css>
#imgTitle {
FILTER: ALPHA(opacity=70); LEFT: 0px; OVERFLOW: hidden; POSITION: relative; TEXT-ALIGN: left
}
#imgTitle_up {
LEFT: 0px; HEIGHT: 1px; TEXT-ALIGN: left
}
#imgTitle_down {
LEFT: 0px; TEXT-ALIGN:left
}
.imgClass {
BORDER-RIGHT: #fff 1px solid; BORDER-TOP: #fff 1px solid; BORDER-LEFT: #fff 1px solid; BORDER-BOTTOM: #fff 1px solid
}
#txtFrom {
VERTICAL-ALIGN: middle;
PADDING-TOP: 2px;
TEXT-ALIGN: center;
font: 12pix;
text-decoration: none;

}
.button {
PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: #7b7b63; PADDING-BOTTOM: 2px; MARGIN: 0px; FONT: bold 9px sans-serif; BORDER-LEFT: #fff 1px solid; PADDING-TOP: 2px; TEXT-DECORATION: none
}
A.button {
COLOR: #ffffff; FONT-FAMILY: sans-serif; BACKGROUND-COLOR: #000000; TEXT-DECORATION: none
}
A.button:link {
COLOR: #ffffff; FONT-FAMILY: sans-serif; BACKGROUND-COLOR: #000000; TEXT-DECORATION: none
}
A.button:visited {
COLOR: #ffffff; FONT-FAMILY: sans-serif; BACKGROUND-COLOR: #000000; TEXT-DECORATION: none
}
A.button:hover {
BACKGROUND: #fff; COLOR: #fff; FONT-FAMILY: sans-serif; TEXT-DECORATION: none
}
.buttonDiv {
BACKGROUND: #000000; FLOAT: left; VERTICAL-ALIGN: middle; WIDTH: 21px; HEIGHT: 1px; TEXT-ALIGN: center
}
.trans {
FILTER: progid:DXImageTransform.Microsoft.Alpha(startX=0, startY=0, finishX=100, finishY=100,style=1,opacity=0,finishOpacity=40); WIDTH: 90px; BACKGROUND-COLOR: #000
}
</STYLE>
<script language=javascript type=text/javascript>
var imgWidth=248; //图片宽
var imgHeight=160; //图片高
var textFromHeight=20; //焦点字框高度 (单位为px)
var textStyle="whiter"; //焦点字class style (不是连接class)
var textLinkStyle="whiter"; //焦点字连接class style
var buttonLineOn="#f60"; //button下划线on的颜色
var buttonLineOff="#000"; //button下划线off的颜色
var TimeOut=3000; //每张图切换时间 (单位毫秒);
var imgUrl=new Array(<%=imgname%>);
var imgLink=new Array(<%=imglink%>);
var imgtext=new Array(<%=imgtext%>);
var imgAlt=new Array(<%=imgtext%>);
var adNum=0;
//焦点字框高度样式表 开始
document.write('<style type="text/css">');
document.write('#focuseFrom{width:'+(imgWidth+2)+';margin: 0px; padding:0px;height:'+(imgHeight+textFromHeight)+'px; overflow:hidden;}');
document.write('#txtFrom{height:'+textFromHeight+'px;line-height:'+textFromHeight+'px;width:'+imgWidth+'px;overflow:hidden;}');
document.write('#imgTitle{width:'+imgWidth+';top:-'+(textFromHeight+14)+'px;height:18px}');
document.write('</style>');
document.write('<div id="focuseFrom">');
//焦点字框高度样式表 结束
////imgUrl[1]='http://www.hnust.cn/news/images/upfiles/200962683344831.jpg';
//imgtext[1]='<a href="http://blog.sina.com.cn/s/blog_54b3acdc0100dtid.html" target="_blank" class=linkblack>中国海洋文化节组图1</a>';
//imgLink[1]='http://blog.sina.com.cn/s/blog_54b3acdc0100dtid.html';
//imgAlt[1]='中国海洋文化节组图1';
//
////imgUrl[2]='http://www.hnust.cn/news/images/upfiles/200982985610455.jpg';
//imgtext[2]='<a href="http://blog.sina.com.cn/dszyz" target="_blank" class=linkblack>周叶舟的新浪博客</a>';imgLink[2]='http://blog.sina.com.cn/dszyz';
//imgAlt[2]='周叶舟的新浪博客';
//
////imgUrl[3]='http://www.hnust.cn/news/images/upfiles/200962683344831.jpg';
//imgtext[3]='<a href="http://blog.sina.com.cn/s/blog_54b3acdc0100ckld.html" target="_blank" class=linkblack>如何减轻中小学生学业负担的八点建议</a>';
//imgLink[3]='http://blog.sina.com.cn/s/blog_54b3acdc0100ckld.html';
//imgAlt[3]='如何减轻中小学生学业负担的八点建议';
//
////imgUrl[4]='http://www.hnust.cn/news/images/upfiles/200982985610455.jpg';
//imgtext[4]='<a href="http://q.blog.sina.com.cn/zjds" target="_blank" class=linkblack>浙江岱山人文</a>';
//imgLink[4]='http://q.blog.sina.com.cn/zjds';
//imgAlt[4]='浙江岱山人文';
//
////imgUrl[5]='http://www.hnust.cn/news/images/upfiles/200962683344831.jpg';
//imgtext[5]='<a href="http://q.blog.sina.com.cn/zjds/bbs/topic/tid=14616323" target="_blank" class=linkblack>2009年中国海洋文化节谢洋大典活动方案</a>';
//imgLink[5]='http://q.blog.sina.com.cn/zjds/bbs/topic/tid=14616323';
//imgAlt[5]='2009年中国海洋文化节谢洋大典活动方案';

function changeimg(n)
{
adNum=n;
window.clearInterval(theTimer);
adNum=adNum-1;
nextAd();
}
function goUrl(){
window.open(imgLink[adNum],'_blank');
}
//NetScape开始
if (navigator.appName == "Netscape")
{
document.write('<style type="text/css">');
document.write('.buttonDiv{height:4px;width:21px;}');
document.write('</style>');
function nextAd(){
if(adNum<(imgUrl.length-1))adNum++;
else adNum=1;
theTimer=setTimeout("nextAd()", TimeOut);
document.images.imgInit.src=imgUrl[adNum];
document.images.imgInit.alt=imgAlt[adNum];
document.getElementById('focustext').innerHTML=imgtext[adNum];
document.getElementById('imgLink').href=imgLink[adNum];
}
document.write('<a id="imgLink" href="'+imgLink[1]+'" target=_blank class="p1"><img src="'+imgUrl[1]+'" name="imgInit" width='+imgWidth+' height='+imgHeight+' border=1 alt="'+imgAlt[1]+'" class="imgClass"></a><div id="txtFrom"><span id="focustext" class="'+textStyle+'">'+imgtext[1]+'</span></div>')
document.write('<div id="imgTitle">');
document.write('<div id="imgTitle_down">');
//数字按钮代码开始
for(var i=1;i<imgUrl.length;i++){document.write('<a href="javascript:changeimg('+i+')" class="button" style="cursor:hand" title="'+imgAlt[i]+'">'+i+'</a>');}
//数字按钮代码结束
document.write('</div>');
document.write('</div>');
document.write('</div>');
nextAd();
}
//NetScape结束
//IE开始
else
{
var count=0;
for (i=1;i<imgUrl.length;i++) {
if( (imgUrl[i]!="") && (imgLink[i]!="")&&(imgtext[i]!="")&&(imgAlt[i]!="") ) {
count++;
} else {
break;
}
}
function playTran(){
if (document.all)
imgInit.filters.revealTrans.play();
}
var key=0;
function nextAd(){
if(adNum<count)adNum++ ;
else adNum=1;
if( key==0 ){
key=1;
} else if (document.all){
imgInit.filters.revealTrans.Transition=23;
imgInit.filters.revealTrans.apply();
playTran();
}
document.images.imgInit.src=imgUrl[adNum];
document.images.imgInit.alt=imgAlt[adNum];
document.getElementById('link'+adNum).style.background=buttonLineOn;
for (var i=1;i<=count;i++)
{
if (i!=adNum){document.getElementById('link'+i).style.background=buttonLineOff;}
}
focustext.innerHTML=imgtext[adNum];
theTimer=setTimeout("nextAd()", TimeOut);
}
document.write('<a target=_self href="javascript:goUrl()"><img style="FILTER: revealTrans(duration=1,transition=5);" src="javascript:nextAd()" width='+imgWidth+' height='+imgHeight+' border=0 vspace="0" name=imgInit class="imgClass"></a><br>');
document.write('<div id="txtFrom"><span id="focustext" class="'+textStyle+'"></span></div>');
document.write('<div id="imgTitle">');
document.write(' <div id="imgTitle_down"> <a class="trans"></a>');
//数字按钮代码开始
for(var i=1;i<imgUrl.length;i++){document.write('<a id="link'+i+'" href="javascript:changeimg('+i+')" class="button" style="cursor:hand" title="'+imgAlt[i]+'" onFocus="this.blur()">'+i+'</a>');}
//数字按钮代码结束
document.write('</div>');
document.write('</div>');
document.write('</div>');
document.write('</div>');
}
//IE结束
</script>

说明:

1.网上曾经流行的flash切换的新闻图片代码,在加载图片容量大于300k的时候, 图片不能够显示;

2.本段代码可以显示大于300K的图片,其中红色字体部分

var imgUrl=new Array(<%=imgname%>);
var imgLink=new Array(<%=imglink%>);
var imgtext=new Array(<%=imgtext%>);
var imgAlt=new Array(<%=imgtext%>);

是在js中引用asp脚本中的实际加载字符串变量,即图片名称,图片链接地址和新闻标题3部分。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: