Tạo pháo hoa trang trí website trong ngày tết 2014-01-22

pháo hoa,trang trí websitr,styles tết

  1. cuong pham
    Compatible (tương thích):
    • XenForo 1.0
    • XenForo 1.1
    • XenForo 1.2
    Sắp đến Tết Nguyên Đán rồi xin chia sẻ với mọi người cách Tạo Pháo Hoa trang trí website cho ngày tết
    [​IMG]
    Ở đây mình sẽ hướng dẫn cách làm trên Xenforo nhé !
    Demo: http://tech24h.vn
    Bước 1: Tạo file FireWorksNewYear.js với nội dung sau (Hoặc tải ở file đính kèm):
    HTML:
    // <![CDATA[
    var bits=80; // how many bits
    var speed=33; // how fast - smaller is faster
    var bangs=5; // how many can be launched simultaneously (note that using too many can slow the script down)
    var colours=new Array("#03f", "#f03", "#0e0", "#93f", "#0cf", "#f93", "#f0c");
    //                    blue    red    green  purple  cyan    orange  pink
    
    /****************************
    *      Fireworks Effect    *
    *(c)2004-11 mf2fm web-design*
    *  http://www.mf2fm.com/rv  *
    * DON'T EDIT BELOW THIS BOX *
    ****************************/
    var bangheight=new Array();
    var intensity=new Array();
    var colour=new Array();
    var Xpos=new Array();
    var Ypos=new Array();
    var dX=new Array();
    var dY=new Array();
    var stars=new Array();
    var decay=new Array();
    var swide=800;
    var shigh=600;
    var boddie;
    
    window.onload=function() { if (document.getElementById) {
      var i;
      boddie=document.createElement("div");
      boddie.style.position="fixed";
      boddie.style.top="0px";
      boddie.style.left="0px";
      boddie.style.overflow="visible";
      boddie.style.width="1px";
      boddie.style.height="1px";
      boddie.style.backgroundColor="transparent";
      document.body.appendChild(boddie);
      set_width();
      for (i=0; i<bangs; i++) {
        write_fire(i);
        launch(i);
        setInterval('stepthrough('+i+')', speed);
      }
    }}
    
    function write_fire(N) {
      var i, rlef, rdow;
      stars[N+'r']=createDiv('|', 12);
      boddie.appendChild(stars[N+'r']);
      for (i=bits*N; i<bits+bits*N; i++) {
        stars[i]=createDiv('*', 13);
        boddie.appendChild(stars[i]);
      }
    }
    
    function createDiv(char, size) {
      var div=document.createElement("div");
      div.style.font=size+"px monospace";
      div.style.position="absolute";
      div.style.backgroundColor="transparent";
      div.appendChild(document.createTextNode(char));
      return (div);
    }
    
    function launch(N) {
      colour[N]=Math.floor(Math.random()*colours.length);
      Xpos[N+"r"]=swide*0.5;
      Ypos[N+"r"]=shigh-5;
      bangheight[N]=Math.round((0.5+Math.random())*shigh*0.4);
      dX[N+"r"]=(Math.random()-0.5)*swide/bangheight[N];
      if (dX[N+"r"]>1.25) stars[N+"r"].firstChild.nodeValue="/";
      else if (dX[N+"r"]<-1.25) stars[N+"r"].firstChild.nodeValue="\\";
      else stars[N+"r"].firstChild.nodeValue="|";
      stars[N+"r"].style.color=colours[colour[N]];
    }
    
    function bang(N) {
      var i, Z, A=0;
      for (i=bits*N; i<bits+bits*N; i++) {
        Z=stars[i].style;
        Z.left=Xpos[i]+"px";
        Z.top=Ypos[i]+"px";
        if (decay[i]) decay[i]--;
        else A++;
        if (decay[i]==15) Z.fontSize="7px";
        else if (decay[i]==7) Z.fontSize="2px";
        else if (decay[i]==1) Z.visibility="hidden";
        Xpos[i]+=dX[i];
        Ypos[i]+=(dY[i]+=1.25/intensity[N]);
      }
      if (A!=bits) setTimeout("bang("+N+")", speed);
    }
    
    function stepthrough(N) {
      var i, M, Z;
      var oldx=Xpos[N+"r"];
      var oldy=Ypos[N+"r"];
      Xpos[N+"r"]+=dX[N+"r"];
      Ypos[N+"r"]-=4;
      if (Ypos[N+"r"]<bangheight[N]) {
        M=Math.floor(Math.random()*3*colours.length);
        intensity[N]=5+Math.random()*4;
        for (i=N*bits; i<bits+bits*N; i++) {
          Xpos[i]=Xpos[N+"r"];
          Ypos[i]=Ypos[N+"r"];
          dY[i]=(Math.random()-0.5)*intensity[N];
          dX[i]=(Math.random()-0.5)*(intensity[N]-Math.abs(dY[i]))*1.25;
          decay[i]=16+Math.floor(Math.random()*16);
          Z=stars[i];
          if (M<colours.length) Z.style.color=colours[i%2?colour[N]:M];
          else if (M<2*colours.length) Z.style.color=colours[colour[N]];
          else Z.style.color=colours[i%colours.length];
          Z.style.fontSize="13px";
          Z.style.visibility="visible";
        }
        bang(N);
        launch(N);
      }
      stars[N+"r"].style.left=oldx+"px";
      stars[N+"r"].style.top=oldy+"px";
    }
    
    window.onresize=set_width;
    function set_width() {
      var sw_min=999999;
      var sh_min=999999;
      if (document.documentElement && document.documentElement.clientWidth) {
        if (document.documentElement.clientWidth>0) sw_min=document.documentElement.clientWidth;
        if (document.documentElement.clientHeight>0) sh_min=document.documentElement.clientHeight;
      }
      if (typeof(self.innerWidth)!="undefined" && self.innerWidth) {
        if (self.innerWidth>0 && self.innerWidth<sw_min) sw_min=self.innerWidth;
        if (self.innerHeight>0 && self.innerHeight<sh_min) sh_min=self.innerHeight;
      }
      if (document.body.clientWidth) {
        if (document.body.clientWidth>0 && document.body.clientWidth<sw_min) sw_min=document.body.clientWidth;
        if (document.body.clientHeight>0 && document.body.clientHeight<sh_min) sh_min=document.body.clientHeight;
      }
      if (sw_min==999999 || sh_min==999999) {
        sw_min=800;
        sh_min=600;
      }
      swide=sw_min;
      shigh=sh_min;
    }
    // ]]>
    Bước 2: Upload file FireWorksNewYear.js lên host của bạn
    Bước 3: vào template page_container_js_head chèn đoạn code sau:
    PHP:
    <script type='text/javascript' src='up/FireWorksNewYear.js'></script>
    Nhớ thay đoạn up/FireWorksNewYear.js bằng đường dẫn đến file FireWorksNewYear.js mà bạn đã up lên host nhé !

    Cách làm tương tự ở các mã nguồn khác !
    dasdasdas and nguyendungbkc like this.
comments powered by Disqus