技术开发 频道

一个自动动态播放图片的类新增图片效果


【IT168技术文档】

  第一步:创建一个类clsTurnPicture

   增加方法如下 :
/**//// <summary> /// 播放图片类(downmoon) /// </summary> /// <param name="arrImgName">arrImgName</param> /// <param name="arrDesc">arrDesc</param> /// <param name="strShopName">strShopName</param> /// <param name="strBrandName">strBrandName</param> /// <param name="strResoourceCode">strResoourceCode</param> /// <param name="ScrWidth">ScrWidth</param> /// <param name="ScrHeight">ScrHeight</param> /// <param name="PicWidth">PicWidth</param> /// <param name="PicHeight">PicHeight</param> /// <param name="TextHeight">TextHeight</param> /// <param name="ToolBarHeight">ToolBarHeight</param> /// <param name="FontSize">默认为16,px</param> /// <returns></returns> public string getPicsForHtml(ArrayList arrImgName,ArrayList arrDesc,string strShopName,string strBrandName,string strResoourceCode,int ScrWidth,int ScrHeight,int PicWidth,int PicHeight,int TextHeight,int ToolBarHeight,int FontSize) ...{ StringBuilder sb = new StringBuilder(); string strHtml=""; if(arrImgName==null) return "" ; ArrayList ar1=new ArrayList(arrImgName); ArrayList ar2=new ArrayList(arrDesc); int len=ar1.Count; int len2=ar1.Count-1; int len3=ToolBarHeight-2; string str1=""; string str2=""; //strHtm+=@" <html><head><title>Buynow{0}-{1}-{2}图片信息</title> strHtml=@"<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.0 Transitional//EN"" ><HTML><HEAD><title>"+ strShopName+"-"+strBrandName+"-"+"席位:"+strResoourceCode+ "-外观展示图"+ @"</title> <meta http-equiv=""content-type"" content=""text/html; charset=gb2312""> <meta name=""GENERATOR"" Content=""Microsoft Visual Studio .NET 7.1""> <meta name=""CODE_LANGUAGE"" Content=""C#""> <meta name=""vs_defaultClientScript"" content=""JavaScript""> <meta name=""vs_targetSchema"" content=""http://schemas.microsoft.com/intellisense/ie5""> "+System.Environment.NewLine; sb.Append(strHtml); sb.Append("<script language=JavaScript>"+" "); sb.Append("<!-- Begin"+System.Environment.NewLine); sb.Append("var interval = 6; // delay between rotating images (in seconds)"+System.Environment.NewLine); sb.Append("interval *= 1000;"+System.Environment.NewLine); sb.Append("var flagtime=0;"+System.Environment.NewLine); sb.Append("var image_index = -1;"+System.Environment.NewLine); sb.Append("image_list = new Array();"+System.Environment.NewLine); sb.Append("note_list = new noteArray("+len2.ToString()+")"+System.Environment.NewLine); sb.Append("var number_of_image = image_list.length;"+System.Environment.NewLine); sb.Append("var timesnum=0; "+System.Environment.NewLine); //strHtml=string.Format(strHtml,len.ToString()); string strTemp=""; for(int k=0;k<ar1.Count;k++) ...{ strTemp=ar1[k].ToString(); //strHtm+=" image_list[k] = new imageItem("+strTemp+")"; str1+=" image_list["+k.ToString()+"] = new imageItem(""+strTemp+"")"+"; "; } sb.Append(""+System.Environment.NewLine); for(int k=0;k<ar2.Count;k++) ...{ strTemp=strShopName+"-"+strBrandName+"-"+strResoourceCode+"-"+ar2[k].ToString(); str2+=" note_list["+k.ToString()+"] = ""+strTemp+"""+"; "; } sb.Append(str1); sb.Append(str2); sb.Append("function noteArray(size)"+System.Environment.NewLine); sb.Append("{"+System.Environment.NewLine); sb.Append("this.length=size;"+System.Environment.NewLine); sb.Append("for(i=1;i<=size;i++)"+System.Environment.NewLine); sb.Append("{"+System.Environment.NewLine); sb.Append(@"this[i]="""""+System.Environment.NewLine); sb.Append(" }"+System.Environment.NewLine); sb.Append("return this;"+System.Environment.NewLine); sb.Append("}"+System.Environment.NewLine); sb.Append("function counternum()"+System.Environment.NewLine); sb.Append("{"+System.Environment.NewLine); sb.Append("if( timesnum < "+len2.ToString()+")"+System.Environment.NewLine); sb.Append("{"+System.Environment.NewLine); sb.Append(" timesnum++;"+System.Environment.NewLine); sb.Append(@"//document.all.slide_ent.src=""about:blank"";"); sb.Append(System.Environment.NewLine); sb.Append(@"//document.all.slide_ent.src=""about:blank"";"); sb.Append(System.Environment.NewLine); sb.Append(" }"+System.Environment.NewLine); sb.Append("}"+System.Environment.NewLine); sb.Append(@"function run(obj) { interval=obj.options[obj.selectedIndex].value*1000; rotateImage(); }"); sb.Append(@"function stop() { interval=0; } function previous() { var new_image = getPreviousImage(); document[""rImage""].src = new_image; } function next() { var new_image = getNextImage(); document[""rImage""].src = new_image; } function imageItem(image_location) { this.image_item = new Image(); this.image_item.src = image_location; } function noteItem(note) { this.note_item = new Image(); this.note_item.src = note; } function get_ImageItemLocation(imageObj) { return(imageObj.image_item.src) } function get_NoteItemLocation(noteObj) { return(noteObj.note_item.src) } function generate(x, y) { var range = y - x + 1; return Math.floor(Math.random() * range) + x; }"); sb.Append(@"function getPreviousImage() { image_index = image_index-1; if (image_index < 0) {"); sb.Append("image_index=image_index+"+len.ToString()+";"); sb.Append(@"} var new_image = get_ImageItemLocation(image_list[image_index]); document.all.span_1.innerText=image_index+1; document.all.summary.innerText=note_list[image_index]; return(new_image);"); sb.Append(System.Environment.NewLine+"}"); sb.Append(@"function getNextImage() { image_index = image_index+1; "); sb.Append("if (image_index >= "+len.ToString()+")"); sb.Append(System.Environment.NewLine); sb.Append(@"{"); sb.Append(System.Environment.NewLine); sb.Append("image_index=image_index-"+len.ToString()+";"); sb.Append(System.Environment.NewLine); sb.Append("}"); sb.Append(System.Environment.NewLine); //sb.Append(@""); sb.Append(@"var new_image = get_ImageItemLocation(image_list[image_index]); document.all.span_1.innerText=image_index+1; document.all.summary.innerText=note_list[image_index]; return(new_image);"); sb.Append(System.Environment.NewLine+"}"); sb.Append(@" //新增图片效果 function setTransition() { if (document.all) { document.all('rImage').filters.revealTrans.Transition=Math.floor(Math.random()*23); document.all('rImage').filters.revealTrans.apply(); } } function playTransition() { if (document.all) document.all('rImage').filters.revealTrans.play(); }"); strHtml=@" function rotateImage() { if (interval == 0) { return 1; } if (flagtime == 1) { var now = new Date(); var time1 = now.getTime(); var time2; time1=time1+3000; time2=now.getTime(); while(time2 < time1) { now = new Date(); time2=now.getTime(); } flagtime=0; } var new_image = getNextImage(); setTransition();//新增图片效果 document['rImage'].src = new_image; var recur_call = ""rotateImage('""+'rImage'+""')""; playTransition();//新增图片效果 setTimeout(recur_call,interval); } // End --> </script> <script type=""text/javascript"" src=""Resource/Script/ygcss.js""></script> "; sb.Append(strHtml); strHtml=@"</HEAD><body topmargin=""0"" leftmargin=""0""><form name=""frmDispImage"">"; sb.Append(strHtml); strHtml=@" <center> <center> <table bgcolor='#fff2df' border='0' cellpadding='0' cellspacing='0' width='" +ScrWidth.ToString()+@"'> <tbody><tr> <td align='center' valign='top'><table border='0' cellpadding='0' cellspacing='0' width='100%'> <tbody><tr> <td height='1'></td> </tr> </tbody></table> <table border='0' cellpadding='0' cellspacing='0' height='"+ PicHeight.ToString()+"' width='"+PicWidth.ToString()+@"' align='center'> <tbody><tr> <td align='center'><img name=""rImage"" src='"+ ar1[0].ToString()+"' width='"+PicWidth+"' height='"+PicHeight+@"' onload=""counternum();"" border='0' style='FILTER: revealTrans(duration=3,transition=20)'></td> </tr> </tbody></table> <!--text--> <table border='0' cellpadding='0' cellspacing='0' width='100%'> <tbody><tr> <td id=""summary"" align='center' height='"+ TextHeight.ToString()+"' style='font-size:"+FontSize.ToString()+"pt;'>" +strShopName+"-"+strBrandName+"-"+strResoourceCode+"-"+ar2[0].ToString()+@"</td> </tr> </tbody></table> <!--/text--> <!--bottom--> <table border='0' cellpadding='0' cellspacing='0' width='100%'> <tbody><tr> <td><img src='Resource/Image/TurnImage/slideshow_bg_3.gif' border='0' height='4' width='"+ScrWidth.ToString()+@"'></td> </tr> <tr> <td bgcolor='#c9beeb' height='"+ToolBarHeight.ToString()+@"'> <table border='0' cellpadding='1' cellspacing='0' width='100%'> <tbody><tr> <td class='sbody' align='center' height='"+len3.ToString()+"'><font style='font-size:"+FontSize+"pt;'><span id='span_1'>1</span>/"+len.ToString()+ @"&nbsp;&nbsp;&nbsp;&nbsp; < img src='Resource/Image/TurnImage/slideshows_bottom_1.gif' alt='开始 ' onclick=""run(document.frmDispImage.select1)"" align='absmiddle' border ='0' height='21' width='35'>&nbsp;&nbsp;<img src='Resource/Image/TurnImage/slideshows_bottom_2.gif' alt ='停止' onclick=""stop();"" align='absmiddle' border='0' height='21' width ='35'> & nbsp;&nbsp;<img src='Resource/Image/TurnImage/slideshows_bottom_3.gif' alt ='前一张' onclick=""previous();"" align='absmiddle' border='0' height= '21' width='35'>&nbsp;&nbsp;<img src='Resource/Image/TurnImage/slideshows_bottom_4.gif' alt ='后一张' onclick=""next();"" align='absmiddle' border='0' height= '21' width='35'>&nbsp;&nbsp;速度: <select name=""select1"" onchange=""run(this)""> <option value=""12"">12 sec.</option> <option selected=""selected"" value=""6"">6 sec.</option> <option value=""3"">3 sec.</option> <option value=""9"">9 sec.</option> </select></font></td> </tr> </tbody></table> </td> </tr> <tr> <td bgcolor='#625a68' height='1'></td> </tr> </tbody></table> </td> </tr> </tbody></table> <!--/--></center> <script language=""javascript""> flagtime=1; rotateImage();//修改为图片自动播放 <!--slideit()--> </script> </center>"; sb.Append(strHtml); sb.Append("</form></body></HTML>"); return sb.ToString(); }
0
相关文章