JavaScript浮動廣告代碼,容純DIV/CSS對聯漂浮廣告代碼,相容性非常好的js右下角與漂浮廣告代碼

來源:互聯網
上載者:User

標籤:--   swf   plugins   顯示   pause   san   滑鼠   注意事項   間隔   

 

 

基於JavaScript代碼實現隨機漂浮圖片廣告,javascript圖片廣告

 

在網上有很多這樣的代碼,不過未必符合W3C標準,因為在頭部加上<!DOCTYPE html>類似標籤之後,漂浮效果就會失效,下面分享一個符合標準的漂浮代碼,使需要的朋友免去大量改造代碼的繁瑣。

代碼一:

代碼如下:

<!DOCTYPE html><html><head><meta charset=" utf-8"><meta name="author" content="http://www.softwhy.com/" /><title>漂浮廣告代碼</title><style type="text/css">#thediv{ z-index:100;  position:absolute;  top:43px;  left:2px; height:100px; width:100px;  background-color:red;}</style><script type="text/javascript"> var xPos=300; var yPos=200; var step=1; var delay=8; var height=0; var Hoffset=0; var Woffset=0; var yon=0; var xon=0; var pause=true; var interval; function changePos() {  width=document.documentElement.clientWidth;  height=document.documentElement.clientHeight;  Hoffset=thediv.offsetHeight;  Woffset=thediv.offsetWidth;  thediv.style.left=(xPos+document.body.scrollLeft+document.documentElement.scrollLeft)+"px";  thediv.style.top=(yPos+document.body.scrollTop+document.documentElement.scrollTop)+"px";  if(yon)  {  yPos=yPos+step; }  else  {  yPos=yPos-step; }  if(yPos<0)  {  yon=1;  yPos=0; }  if(yPos>=(height-Hoffset))  {  yon=0;  yPos=(height - Hoffset); }  if(xon)  {  xPos=xPos + step; }  else  {  xPos=xPos - step; }  if(xPos < 0)  {  xon = 1;  xPos = 0; }  if(xPos >= (width - Woffset))  {  xon = 0;  xPos = (width - Woffset);  } } function start() {  thediv.visibility="visible";  interval=setInterval(‘changePos()‘,delay); } function pause_resume() {  if(pause)  {   clearInterval(interval);   pause = false; }  else  {   interval = setInterval(changePos,delay);   pause = true;  } }window.onload=function(){ thediv.style.top=yPos;  start(); }</script> </head> <body> <div id="thediv"></div> </body> </html> 

以上代碼實現了我們的要求,紅色div塊能夠能夠在網頁中隨機漂浮,並且相容各個瀏覽器。代碼的實現過程這裡就不多介紹了,如有任何問題可以跟帖留言。

代碼二:JS隨機漂浮廣告代碼具體執行個體

代碼如下:

<!--隨機漂浮廣告開始--><div id="float" style="position:absolute; z-index:3;(我建議大家把這裡設為100,這樣浮動圖就不會被遮住了) left: 512px; width: 83px; top: 9px; height: 53px;">   <img src="piaofu.gif" width="100" height="50"> </div><script type="text/javascript">  <!--隨機漂浮廣告 -->  var xPos=0,yPos=0;//x,y軸座標  var xon=0;//圖片在x軸移動方向  var yon=0;//圖片在y軸移動方向  var step=1;   //移動距離  var img=document.getElementByIdx_x("float");//圖片層  function floatP()  {   var width=document.body.clientWidth;//瀏覽器寬度   var height=document.body.clientHeight;//瀏覽器高度   var Hoffset=img.offsetHeight;//圖片高度   var Woffset=img.offsetWidth;//圖片寬度   img.style.left=xPos+document.body.scrollLeft;//圖片距離瀏覽器左側位置   img.style.top=yPos+document.body.scrollTop;//圖片距離瀏覽器頂端位置   if(yon==0){   yPos=yPos+step;//圖片在y軸方向上下移動   }else{   yPos=yPos-step;   }   if(yPos<0){//飄到頂端,沿y軸向下移動   yon=0;   yPos=0;   }   if(yPos>=(height-Hoffset)){//飄到低端,沿y軸向上移動   yon=1;   yPos=(height-Hoffset);   }   if(xon==0){//x軸向右移動   xPos=xPos+step;   }else{   xPos=xPos-step;//x軸向左移動   }   if(xPos<0){//飄到左側時沿x軸向右移動   xon=0;   xPos=0;   }   if(xPos>=(width-Woffset)){//飄到右側時沿x軸向左移動   xon=1;   xPos=(width-Woffset);   }   setTimeout("floatP()",30);//定時調用。  }  window.onload=floatP();</script>

 代碼如下:

<script>var x = 50,y = 60 //浮動層的初始位置,分別對應層的初始X座標和Y座標var xin = true, yin = true //判斷層的X座標和Y座標是否在在控制範圍之內,xin為真是層向右移動,否則向左;yin為真是層向下移動,否則向上var step = 1 //層移動的步長,值越大移動速度越快var delay = 10 //層移動的時間間隔,單位為毫秒,值越小移動速度越快var obj=document.getElementByIdx_x("float") //捕獲id為ad的層作為漂浮目標function floatAD() {var L=T=0 //層移動範圍的左邊界(L)和上邊界(T)座標var R= document.body.clientWidth-obj.offsetWidth //層移動的右邊界var B = document.body.clientHeight-obj.offsetHeight //層移動的下邊界obj.style.left = x + document.body.scrollLeft //更新層的X座標,實現X軸方向上的運動;document.body.scrollLeft為文檔地區的捲軸向右拉的距離,以保證在捲軸右拉時層仍在可見範圍內obj.style.top = y + document.body.scrollTop //更新層的Y座標,實現Y軸方向上的運動;document.body.scrollTop為文檔地區的捲軸向下拉的距離,以保證在捲軸下拉時層仍在可見範圍內x = x + step*(xin?1:-1) //通過判斷層的範圍決定層在X軸上的運動方向if (x < L) { xin = true; x = L} //層超出左邊界時的處理if (x > R){ xin = false; x = R} //層超出右邊界時的處理y = y + step*(yin?1:-1) //通過判斷層的範圍決定層在Y軸上的運動方向if (y < T) { yin = true; y = T } //層超出上邊界時的處理if (y > B) { yin = false; y = B } //層超出下邊界時的處理}var itl= setInterval("floatAD()", delay) //每delay秒執行一次floatAD函數obj.onmouseover=function(){clearInterval(itl)} //層在滑鼠移上時清除上面的間隔事件,實現層在的滑鼠移上時停止運動的效果obj.onmouseout=function(){itl=setInterval("floatAD()", delay)} //層在滑鼠移開時開始間隔事件,實現層在的滑鼠移開時繼續運動的效果</script>

幫客之家友情提醒大家需要注意事項:

在網頁中插入Flash和浮動廣告,你會發現在浮動廣告浮到Flash處時會在下面,我們如何解決這個問題呢,其它很簡單

在flash代碼的位置加入下面語句就可以了

<param name="wmode" value="opaque">

例:

如果下面是flash所在位置的代碼:

代碼如下:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="780" height="165"><param name="movie" value="banner1.swf"><param name="quality" value="high"><param name="menu" value="false"><param name="wmode" value="opaque"><!--主要是這句--><embed src="banner1.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="780" height="165"></embed></object>

本文執行個體為大家分享javascript實現全屏漂浮廣告,供大家參考,具體內容如下

主要使用方法

網頁可見地區寬:document.body.clientWidth;
網頁可見地區高:document.body.clientHeight;

網頁可見地區寬:document.body.offsetWidth (包括邊線的寬);
網頁可見地區高:document.body.offsetHeight (包括邊線的寬); 

setInterval

setInterval動作的作用是在播放動畫的時,每隔一定時間就調用函數,方法或對象。可以使用本動作更新來自資料庫的變數或更新時間顯示。

setInterval動作的文法格式如下:

 setInterval(function,interval[,arg1,arg2,......argn])   setInterval(object,methodName,interval[,arg1,arg2,.....argn])

      第一種格式是標準動作面板中setInterval函數的預設文法,第二種格式是在專家模式動作中使用的方法。
      參數function是一個函數名或者一個對匿名函數的引用。
      object參數指定從Object對象派生的對象。methodName制定object參數中要調用的方法。
      interval制定對function或methodName調用兩次之間的時間,單位是毫秒。後面的arg1等是可選的參數,用於制定傳遞給function或是methodName的參數。
      setInterval它設定的時間間隔小於動畫幀速(如每秒10幀,相當於100毫秒),則按照儘可能接近interval的時間間隔調用函數。而且必 須使用updateAfterEvent動作來確保以足夠的頻率重新整理螢幕。如果interval大於動畫幀速,則只用在每次播放頭進入某一幀是才調用,以 減小每次重新整理螢幕的影響。

clearInterval

clearInterval動作的作用是清除對setInterval函數的調用

它的文法格式如下:
      clearInterval(intervalid);   //intervalid是調用setInterval函數後返回的對象。 

廣告移動效果 執行個體

<html>  <head>    <meta http-equiv="content-type" content="text/html; charset=utf-8">    <title>簡單JS動畫執行個體 廣告移動效果</title>  </head>  <body>    <div id="one" style=" position:absolute; left:0; top:0; height:100px; height:100px; ">      移動廣告    </div>     <script type="text/javascript">      var x=0;    //對象X軸位置      var y=0;    //對象Y軸位置      var xs = 10;  //對象X軸移動速度      var ys = 10;  //對象Y軸移動速度       var one = document.getElementById(‘one‘);        function move(){        x += xs;         y += ys;         one.style.left = x;         one.style.top = y;         if (x > document.body.clientWidth - one.offsetWidth-20 || x<0) {          xs = -1*xs;     //速度取反        }         if (y > document.body.clientHeight - one.offsetHeight-20 || y<0){          ys = -1*ys;         }      }      var obj = setInterval(‘move()‘, 100);        one.onmouseover = function(){  //        clearInterval(obj);       }       one.onmouseout = function (){        obj = setInterval(‘move()‘, 100);       }

 

    </script>  </body></html>

以上就是本文的全部內容,希望對大家的學習有所協助。

大衣哥 年度 王小源 帥總 囧囧丸 天佑 流氓三金 畢加索 王冕 風小箏 利哥 天佑 天佑 沈曼 資料

 

JavaScript浮動廣告代碼,容純DIV/CSS對聯漂浮廣告代碼,相容性非常好的js右下角與漂浮廣告代碼

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.