javascript经典效果(四)

14年前

三 如果文字过长,则将过长的部分变成省略号显示:


 

  1. <DIV STYLE="width: 120px; height: 50px; border: 1px solid blue;
  2.             overflow: hidden; text-overflow:ellipsis">
  3. <NOBR>就是比如有一行文字,很长,表格内一行显示不下.</NOBR>
  4. </DIV>
复制代码


 

四 滚动的图片


 

  1. <script language="javascript">
  2. imgArr=new Array()
  3. imgArr[0]="<a href=# onmouseMove='javascript:outHover=true' onMouseover='javascript:outHover=true' onMouseout='javascript:outHover=false;mvStart()'><img src=http://mc.mapabc.com/mapcard/images/LP_card_1.gif border=0></a>"
  4. imgArr[1]="<a href=# onmouseMove='javascript:outHover=true' onMouseover='javascript:outHover=true' onMouseout='javascript:outHover=false;mvStart()'><img src=http://mc.mapabc.com/mapcard/images/LP_card_1.gif border=0></a>"
  5. imgArr[2]="<a href=# onmouseMove='javascript:outHover=true' onMouseover='javascript:outHover=true' onMouseout='javascript:outHover=false;mvStart()'><img src=http://mc.mapabc.com/mapcard/images/LP_card_1.gif border=0></a>"
  6. imgArr[3]="<a href=# onmouseMove='javascript:outHover=true' onMouseover='javascript:outHover=true' onMouseout='javascript:outHover=false;mvStart()'><img src=http://mc.mapabc.com/mapcard/images/LP_card_1.gif border=0></a>"
  7. imgArr[4]="<a href=# onmouseMove='javascript:outHover=true' onMouseover='javascript:outHover=true' onMouseout='javascript:outHover=false;mvStart()'><img src=http://mc.mapabc.com/mapcard/images/LP_card_1.gif border=0></a>"
  8. var moveStep=4        //步长,单位:pixel
  9. var moveRelax=100    //移动时间间隔,单位:ms
  10. ns4=(document.layers)?true:false
  11. var displayImgAmount=4    //视区窗口可显示个数
  12. var divWidth=220    //每块图片占位宽
  13. var divHeight=145    //每块图片占位高
  14. var startDnum=0
  15. var nextDnum=startDnum+displayImgAmount
  16. var timeID
  17. var outHover=false
  18. var startDivClipLeft
  19. var nextDivClipRight
  20. function initDivPlace(){
  21.     if (ns4){
  22.         for (i=0;i<displayImgAmount;i++){
  23.             eval("document.divOuter.document.divAds"+i+".left="+divWidth*i)
  24.         }
  25.         for (i=displayImgAmount;i<imgArr.length;i++){
  26.             eval("document.divOuter.document.divAds"+i+".left="+divWidth*displayImgAmount)
  27.         }
  28.     }else{
  29.         for (i=0;i<displayImgAmount;i++){
  30.             eval("document.all.divAds"+i+".style.left="+divWidth*i)
  31.         }
  32.         for (i=displayImgAmount;i<imgArr.length;i++){
  33.             eval("document.all.divAds"+i+".style.left="+divWidth*displayImgAmount)
  34.         }
  35.     }
  36. }
  37. function mvStart(){
  38.     timeID=setTimeout(moveLeftDiv,moveRelax)
  39. }
  40. function mvStop(){
  41.     clearTimeout(timeID)
  42. }
  43. function moveLeftDiv(){
  44.     if (ns4){
  45.         for (i=0;i<=displayImgAmount;i++){
  46.             eval("document.divOuter.document.divAds"+parseInt((startDnum+i)%imgArr.length)+".left=document.divOuter.document.divAds"+parseInt((startDnum+i)%imgArr.length)+".left-moveStep")
  47.         }
  48.         startDivClipLeft=parseInt(eval("document.divOuter.document.divAds"+startDnum+".clip.left"))
  49.         nextDivClipRight=parseInt(eval("document.divOuter.document.divAds"+nextDnum+".clip.right"))
  50.         if (startDivClipLeft+moveStep>divWidth){
  51.             eval("document.divOuter.document.divAds"+nextDnum+".clip.right="+divWidth)
  52.             
  53.             eval("document.divOuter.document.divAds"+startDnum+".left="+divWidth*displayImgAmount)
  54.             eval("document.divOuter.document.divAds"+parseInt((nextDnum+1)%imgArr.length)+".left=document.divOuter.document.divAds"+nextDnum+".left+"+divWidth)
  55.             eval("document.divOuter.document.divAds"+parseInt((nextDnum+1)%imgArr.length)+".clip.left=0")
  56.             
  57.             
  58.             startDnum=(++startDnum)%imgArr.length
  59.             nextDnum=(startDnum+displayImgAmount)%imgArr.length
  60.             
  61.             startDivClipLeft=moveStep-(divWidth-startDivClipLeft)
  62.             nextDivClipRight=moveStep-(divWidth-nextDivClipRight)
  63.         }else{
  64.             eval("document.divOuter.document.divAds"+nextDnum+".clip.left=0")
  65.             startDivClipLeft+=moveStep
  66.             nextDivClipRight+=moveStep
  67.         }
  68.         eval("document.divOuter.document.divAds"+startDnum+".clip.left="+startDivClipLeft)
  69.         eval("document.divOuter.document.divAds"+nextDnum+".clip.right="+nextDivClipRight)
  70.     }else{
  71.         for (i=0;i<=displayImgAmount;i++){
  72.             eval("document.all.divAds"+parseInt((startDnum+i)%imgArr.length)+".style.left=document.all.divAds"+parseInt((startDnum+i)%imgArr.length)+".style.pixelLeft-moveStep")
  73.         }
  74.    
  75.         startDivClipLeft=parseInt(eval("document.all.divAds"+startDnum+".currentStyle.clipLeft"))
  76.         nextDivClipRight=parseInt(eval("document.all.divAds"+nextDnum+".currentStyle.clipRight"))
  77.    
  78.         if (startDivClipLeft+moveStep>divWidth){
  79.             eval("document.all.divAds"+nextDnum+".style.clip='rect(0,"+divWidth+","+divHeight+",0"+")'")
  80.             
  81.             eval("document.all.divAds"+startDnum+".style.left="+divWidth*displayImgAmount)
  82.             eval("document.all.divAds"+parseInt((nextDnum+1)%imgArr.length)+".style.left=document.all.divAds"+nextDnum+".style.pixelLeft+"+divWidth)
  83.             
  84.             startDnum=(++startDnum)%imgArr.length
  85.             nextDnum=(startDnum+displayImgAmount)%imgArr.length
  86.             
  87.             startDivClipLeft=moveStep-(divWidth-startDivClipLeft)
  88.             nextDivClipRight=moveStep-(divWidth-nextDivClipRight)
  89.         }else{
  90.             startDivClipLeft+=moveStep
  91.             nextDivClipRight+=moveStep
  92.         }
  93.         eval("document.all.divAds"+startDnum+".style.clip='rect(0,"+divWidth+","+divHeight+","+startDivClipLeft+")'")
  94.         eval("document.all.divAds"+nextDnum+".style.clip='rect(0,"+nextDivClipRight+","+divHeight+",0)'")
  95.     }
  96.     if (outHover){
  97.         mvStop()
  98.     }else{
  99.         mvStart()
  100.     }
  101.    
  102.    
  103. }
  104. function writeDivs(){
  105.     if (ns4){
  106.         document.write("<ilayer name=divOuter width=750 height="+divHeight+">")
  107.         
  108.         for (i=0;i<imgArr.length;i++){
  109.             document.write("<layer name=divAds"+i+">")
  110.             document.write(imgArr[i]+" ")
  111.             document.write("</layer>")
  112.         }
  113.         document.write("</ilayer>")
  114.         document.close()
  115.         for (i=displayImgAmount;i<imgArr.length;i++){
  116.             eval("document.divOuter.document.divAds"+i+".clip.right=0")
  117.         }
  118.     }else{
  119.         document.write("<div id=divOuter style='position:relative' width=750 height="+divHeight+">")
  120.         
  121.         for (i=0;i<imgArr.length;i++){
  122.             document.write("<div id=divAds"+i+" style='position:absolute;clip:rect(0,"+divWidth+","+divHeight+",0)'>")
  123.             document.write(imgArr[i]+" ")
  124.             document.write("</div>")
  125.         }
  126.         document.write("</div>")
  127.         for (i=displayImgAmount;i<imgArr.length;i++){
  128.             eval("document.all.divAds"+i+".style.clip='rect(0,0,"+divHeight+",0)'")
  129.         }
  130.     }
  131. }
  132. </script>
  133. <BODY onload=javascript:mvStart()>
  134. <SCRIPT language=javascript>writeDivs();initDivPlace();</SCRIPT>
复制代码