Page 1 of 2 12 LastLast
Results 1 to 10 of 13

Thread: Matrix text effect question

  1. #1
    Join Date
    Feb 2008
    Posts
    10
    Thanks
    4
    Thanked 0 Times in 0 Posts

    Default Matrix text effect question

    Matrix text effect

    http://www.dynamicdrive.com/dynamici...trixeffect.htm

    Is there a way to redirect the user to a new page say 5 seconds or so after the phrase has fully loaded?

    Thanks.

  2. #2
    Join Date
    May 2012
    Location
    Hitchhiking the Galaxy
    Posts
    1,013
    Thanks
    47
    Thanked 139 Times in 139 Posts
    Blog Entries
    1

    Default

    Code:
    redirectTime = "1500";
    redirectURL = "http://www.your-page.com";
    function timedRedirect() {
    	setTimeout("location.href = redirectURL;",redirectTime);
    }
    and then call the function in the body.
    "Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program." - Linus Torvalds
    Anime Views Forums
    Bernie

  3. #3
    Join Date
    Mar 2011
    Location
    N 11 19' 0.0012 E 142 15' 0
    Posts
    1,521
    Thanks
    41
    Thanked 89 Times in 88 Posts
    Blog Entries
    3

    Default

    Quote Originally Posted by bernie1227 View Post
    Code:
    redirectTime = "1500";
    redirectURL = "http://www.your-page.com";
    function timedRedirect() {
    	setTimeout("location.href = redirectURL;",redirectTime);
    }
    and then call the function in the body.
    He said after the text affect is finished, not after page load... so that code won't work...

  4. #4
    Join Date
    May 2012
    Location
    Hitchhiking the Galaxy
    Posts
    1,013
    Thanks
    47
    Thanked 139 Times in 139 Posts
    Blog Entries
    1

    Default

    well that's easy, just set a listener for when the message loads, and trigger the function.
    "Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program." - Linus Torvalds
    Anime Views Forums
    Bernie

  5. #5
    Join Date
    Feb 2008
    Posts
    10
    Thanks
    4
    Thanked 0 Times in 0 Posts

    Default

    Quote Originally Posted by bernie1227 View Post
    well that's easy, just set a listener for when the message loads, and trigger the function.
    Thanks Bernie, can you tell me how to go about doing this?

  6. #6
    Join Date
    May 2012
    Location
    Hitchhiking the Galaxy
    Posts
    1,013
    Thanks
    47
    Thanked 139 Times in 139 Posts
    Blog Entries
    1

    Default

    you will need to use this slightly modified script:
    Code:
    var rows=11; // must be an odd number
    var speed=50; // lower is faster
    var reveal=2; // between 0 and 2 only. The higher, the faster the word appears
    var effectalign="default" //enter "center" to center it.
    var redirectURL = "http://www.your-page.com";
    /***********************************************
    * The Matrix Text Effect- by Richard Womersley (http://www.mf2fm.co.uk/rv)
    * This notice must stay intact for use
    * Visit http://www.dynamicdrive.com/ for full source code
    ***********************************************/
    
    var w3c=document.getElementById && !window.opera;;
    var ie45=document.all && !window.opera;
    var ma_tab, matemp, ma_bod, ma_row, x, y, columns, ma_txt, ma_cho;
    var m_coch=new Array();
    var m_copo=new Array();
    window.onload=function() {
    	if (!w3c && !ie45) return
      var matrix=(w3c)?document.getElementById("matrix"):document.all["matrix"];
      ma_txt=(w3c)?matrix.firstChild.nodeValue:matrix.innerHTML;
      ma_txt=" "+ma_txt+" ";
      columns=ma_txt.length;
      if (w3c) {
        while (matrix.childNodes.length) matrix.removeChild(matrix.childNodes[0]);
        ma_tab=document.createElement("table");
        ma_tab.setAttribute("border", 0);
        ma_tab.setAttribute("align", effectalign);
        ma_tab.style.backgroundColor="#000000";
        ma_bod=document.createElement("tbody");
        for (x=0; x<rows; x++) {
          ma_row=document.createElement("tr");
          for (y=0; y<columns; y++) {
            matemp=document.createElement("td");
            matemp.setAttribute("id", "Mx"+x+"y"+y);
            matemp.className="matrix";
            matemp.appendChild(document.createTextNode(String.fromCharCode(160)));
            ma_row.appendChild(matemp);
          }
          ma_bod.appendChild(ma_row);
        }
        ma_tab.appendChild(ma_bod);
        matrix.appendChild(ma_tab);
      } else {
        ma_tab='<ta'+'ble align="'+effectalign+'" border="0" style="background-color:#000000">';
        for (var x=0; x<rows; x++) {
          ma_tab+='<t'+'r>';
          for (var y=0; y<columns; y++) {
            ma_tab+='<t'+'d class="matrix" id="Mx'+x+'y'+y+'">*</'+'td>';
          }
          ma_tab+='</'+'tr>';
        }
        ma_tab+='</'+'table>';
        matrix.innerHTML=ma_tab;
      }
      ma_cho=ma_txt;
      for (x=0; x<columns; x++) {
        ma_cho+=String.fromCharCode(32+Math.floor(Math.random()*94));
        m_copo[x]=0;
      }
      ma_bod=setInterval("mytricks()", speed);
    }
    
    function mytricks() {
      x=0;
      for (y=0; y<columns; y++) {
        x=x+(m_copo[y]==100);
        ma_row=m_copo[y]%100;
        if (ma_row && m_copo[y]<100) {
          if (ma_row<rows+1) {
            if (w3c) {
              matemp=document.getElementById("Mx"+(ma_row-1)+"y"+y);
              matemp.firstChild.nodeValue=m_coch[y];
            }
            else {
              matemp=document.all["Mx"+(ma_row-1)+"y"+y];
              matemp.innerHTML=m_coch[y];
            }
            matemp.style.color="#33ff66";
            matemp.style.fontWeight="bold";
          }
          if (ma_row>1 && ma_row<rows+2) {
            matemp=(w3c)?document.getElementById("Mx"+(ma_row-2)+"y"+y):document.all["Mx"+(ma_row-2)+"y"+y];
            matemp.style.fontWeight="normal";
            matemp.style.color="#00ff00";
          }
          if (ma_row>2) {
              matemp=(w3c)?document.getElementById("Mx"+(ma_row-3)+"y"+y):document.all["Mx"+(ma_row-3)+"y"+y];
            matemp.style.color="#009900";
          }
          if (ma_row<Math.floor(rows/2)+1) m_copo[y]++;
          else if (ma_row==Math.floor(rows/2)+1 && m_coch[y]==ma_txt.charAt(y)) zoomer(y);
          else if (ma_row<rows+2) m_copo[y]++;
          else if (m_copo[y]<100) m_copo[y]=0;
        }
        else if (Math.random()>0.9 && m_copo[y]<100) {
          m_coch[y]=ma_cho.charAt(Math.floor(Math.random()*ma_cho.length));
          m_copo[y]++;
        }
      }
      if (x==columns){
      clearInterval(ma_bod);
      setTimeout("location.href = redirectURL;",y);
      }
    }
    
    function zoomer(ycol) {
      var mtmp, mtem, ytmp;
      if (m_copo[ycol]==Math.floor(rows/2)+1) {
        for (ytmp=0; ytmp<rows; ytmp++) {
          if (w3c) {
            mtmp=document.getElementById("Mx"+ytmp+"y"+ycol);
            mtmp.firstChild.nodeValue=m_coch[ycol];
          }
          else {
            mtmp=document.all["Mx"+ytmp+"y"+ycol];
            mtmp.innerHTML=m_coch[ycol];
          }
          mtmp.style.color="#33ff66";
          mtmp.style.fontWeight="bold";
        }
        if (Math.random()<reveal) {
          mtmp=ma_cho.indexOf(ma_txt.charAt(ycol));
          ma_cho=ma_cho.substring(0, mtmp)+ma_cho.substring(mtmp+1, ma_cho.length);
        }
        if (Math.random()<reveal-1) ma_cho=ma_cho.substring(0, ma_cho.length-1);
        m_copo[ycol]+=199;
        setTimeout("zoomer("+ycol+")", speed);
      }
      else if (m_copo[ycol]>200) {
        if (w3c) {
          mtmp=document.getElementById("Mx"+(m_copo[ycol]-201)+"y"+ycol);
          mtem=document.getElementById("Mx"+(200+rows-m_copo[ycol]--)+"y"+ycol);
        }
        else {
          mtmp=document.all["Mx"+(m_copo[ycol]-201)+"y"+ycol];
          mtem=document.all["Mx"+(200+rows-m_copo[ycol]--)+"y"+ycol];
        }
        mtmp.style.fontWeight="normal";
        mtem.style.fontWeight="normal";
        setTimeout("zoomer("+ycol+")", speed);
      }
      else if (m_copo[ycol]==200) m_copo[ycol]=100+Math.floor(rows/2);
      if (m_copo[ycol]>100 && m_copo[ycol]<200) {
        if (w3c) {
          mtmp=document.getElementById("Mx"+(m_copo[ycol]-101)+"y"+ycol);
          mtmp.firstChild.nodeValue=String.fromCharCode(160);
          mtem=document.getElementById("Mx"+(100+rows-m_copo[ycol]--)+"y"+ycol);
          mtem.firstChild.nodeValue=String.fromCharCode(160);
        }
        else {
          mtmp=document.all["Mx"+(m_copo[ycol]-101)+"y"+ycol];
          mtmp.innerHTML=String.fromCharCode(160);
          mtem=document.all["Mx"+(100+rows-m_copo[ycol]--)+"y"+ycol];
          mtem.innerHTML=String.fromCharCode(160);
        }
        setTimeout("zoomer("+ycol+")", speed);
      }
    }
    "Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program." - Linus Torvalds
    Anime Views Forums
    Bernie

  7. The Following User Says Thank You to bernie1227 For This Useful Post:

    sumer (09-17-2012)

  8. #7
    Join Date
    Feb 2008
    Posts
    10
    Thanks
    4
    Thanked 0 Times in 0 Posts

    Default

    [QUOTE=bernie1227;281420]you will need to use this slightly modified script:
    /QUOTE]

    Thanks very much, I will give it a go and let you know.

  9. #8
    Join Date
    Feb 2008
    Posts
    10
    Thanks
    4
    Thanked 0 Times in 0 Posts

    Default

    Thanks, it works perfectly. Is there a way to delay the redirect, say for a second or two?

  10. #9
    Join Date
    May 2012
    Location
    Hitchhiking the Galaxy
    Posts
    1,013
    Thanks
    47
    Thanked 139 Times in 139 Posts
    Blog Entries
    1

    Default

    The time you wish to wait afterwards Is defined at the top.
    Code:
    var rows=11; // must be an odd number
    var speed=50; // lower is faster
    var reveal=2; // between 0 and 2 only. The higher, the faster the word appears
    var effectalign="default" //enter "center" to center it.
    var redirectURL = "http://www.your-page.com";
    var timeAfter = 500;
    /***********************************************
    * The Matrix Text Effect- by Richard Womersley (http://www.mf2fm.co.uk/rv)
    * This notice must stay intact for use
    * Visit http://www.dynamicdrive.com/ for full source code
    ***********************************************/
    
    var w3c=document.getElementById && !window.opera;;
    var ie45=document.all && !window.opera;
    var ma_tab, matemp, ma_bod, ma_row, x, y, columns, ma_txt, ma_cho;
    var m_coch=new Array();
    var m_copo=new Array();
    window.onload=function() {
    	if (!w3c && !ie45) return
    * var matrix=(w3c)?document.getElementById("matrix"):document.all["matrix"];
    * ma_txt=(w3c)?matrix.firstChild.nodeValue:matrix.innerHTML;
    * ma_txt=" "+ma_txt+" ";
    * columns=ma_txt.length;
    * if (w3c) {
    * * while (matrix.childNodes.length) matrix.removeChild(matrix.childNodes[0]);
    * * ma_tab=document.createElement("table");
    * * ma_tab.setAttribute("border", 0);
    * * ma_tab.setAttribute("align", effectalign);
    * * ma_tab.style.backgroundColor="#000000";
    * * ma_bod=document.createElement("tbody");
    * * for (x=0; x<rows; x++) {
    * * * ma_row=document.createElement("tr");
    * * * for (y=0; y<columns; y++) {
    * * * * matemp=document.createElement("td");
    * * * * matemp.setAttribute("id", "Mx"+x+"y"+y);
    * * * * matemp.className="matrix";
    * * * * matemp.appendChild(document.createTextNode(String.fromCharCode(160)));
    * * * * ma_row.appendChild(matemp);
    * * * }
    * * * ma_bod.appendChild(ma_row);
    * * }
    * * ma_tab.appendChild(ma_bod);
    * * matrix.appendChild(ma_tab);
    * } else {
    * * ma_tab='<ta'+'ble align="'+effectalign+'" border="0" style="background-color:#000000">';
    * * for (var x=0; x<rows; x++) {
    * * * ma_tab+='<t'+'r>';
    * * * for (var y=0; y<columns; y++) {
    * * * * ma_tab+='<t'+'d class="matrix" id="Mx'+x+'y'+y+'">*</'+'td>';
    * * * }
    * * * ma_tab+='</'+'tr>';
    * * }
    * * ma_tab+='</'+'table>';
    * * matrix.innerHTML=ma_tab;
    * }
    * ma_cho=ma_txt;
    * for (x=0; x<columns; x++) {
    * * ma_cho+=String.fromCharCode(32+Math.floor(Math.random()*94));
    * * m_copo[x]=0;
    * }
    * ma_bod=setInterval("mytricks()", speed);
    }
    
    function mytricks() {
    * x=0;
    * for (y=0; y<columns; y++) {
    * * x=x+(m_copo[y]==100);
    * * ma_row=m_copo[y]%100;
    * * if (ma_row && m_copo[y]<100) {
    * * * if (ma_row<rows+1) {
    * * * * if (w3c) {
    * * * * * matemp=document.getElementById("Mx"+(ma_row-1)+"y"+y);
    * * * * * matemp.firstChild.nodeValue=m_coch[y];
    * * * * }
    * * * * else {
    * * * * * matemp=document.all["Mx"+(ma_row-1)+"y"+y];
    * * * * * matemp.innerHTML=m_coch[y];
    * * * * }
    * * * * matemp.style.color="#33ff66";
    * * * * matemp.style.fontWeight="bold";
    * * * }
    * * * if (ma_row>1 && ma_row<rows+2) {
    * * * * matemp=(w3c)?document.getElementById("Mx"+(ma_row-2)+"y"+y):document.all["Mx"+(ma_row-2)+"y"+y];
    * * * * matemp.style.fontWeight="normal";
    * * * * matemp.style.color="#00ff00";
    * * * }
    * * * if (ma_row>2) {
    * * * * * matemp=(w3c)?document.getElementById("Mx"+(ma_row-3)+"y"+y):document.all["Mx"+(ma_row-3)+"y"+y];
    * * * * matemp.style.color="#009900";
    * * * }
    * * * if (ma_row<Math.floor(rows/2)+1) m_copo[y]++;
    * * * else if (ma_row==Math.floor(rows/2)+1 && m_coch[y]==ma_txt.charAt(y)) zoomer(y);
    * * * else if (ma_row<rows+2) m_copo[y]++;
    * * * else if (m_copo[y]<100) m_copo[y]=0;
    * * }
    * * else if (Math.random()>0.9 && m_copo[y]<100) {
    * * * m_coch[y]=ma_cho.charAt(Math.floor(Math.random()*ma_cho.length));
    * * * m_copo[y]++;
    * * }
    * }
    * if (x==columns){
    * clearInterval(ma_bod);
    * setTimeout("location.href = redirectURL;",timeAfter + y);
    * }
    }
    
    function zoomer(ycol) {
    * var mtmp, mtem, ytmp;
    * if (m_copo[ycol]==Math.floor(rows/2)+1) {
    * * for (ytmp=0; ytmp<rows; ytmp++) {
    * * * if (w3c) {
    * * * * mtmp=document.getElementById("Mx"+ytmp+"y"+ycol);
    * * * * mtmp.firstChild.nodeValue=m_coch[ycol];
    * * * }
    * * * else {
    * * * * mtmp=document.all["Mx"+ytmp+"y"+ycol];
    * * * * mtmp.innerHTML=m_coch[ycol];
    * * * }
    * * * mtmp.style.color="#33ff66";
    * * * mtmp.style.fontWeight="bold";
    * * }
    * * if (Math.random()<reveal) {
    * * * mtmp=ma_cho.indexOf(ma_txt.charAt(ycol));
    * * * ma_cho=ma_cho.substring(0, mtmp)+ma_cho.substring(mtmp+1, ma_cho.length);
    * * }
    * * if (Math.random()<reveal-1) ma_cho=ma_cho.substring(0, ma_cho.length-1);
    * * m_copo[ycol]+=199;
    * * setTimeout("zoomer("+ycol+")", speed);
    * }
    * else if (m_copo[ycol]>200) {
    * * if (w3c) {
    * * * mtmp=document.getElementById("Mx"+(m_copo[ycol]-201)+"y"+ycol);
    * * * mtem=document.getElementById("Mx"+(200+rows-m_copo[ycol]--)+"y"+ycol);
    * * }
    * * else {
    * * * mtmp=document.all["Mx"+(m_copo[ycol]-201)+"y"+ycol];
    * * * mtem=document.all["Mx"+(200+rows-m_copo[ycol]--)+"y"+ycol];
    * * }
    * * mtmp.style.fontWeight="normal";
    * * mtem.style.fontWeight="normal";
    * * setTimeout("zoomer("+ycol+")", speed);
    * }
    * else if (m_copo[ycol]==200) m_copo[ycol]=100+Math.floor(rows/2);
    * if (m_copo[ycol]>100 && m_copo[ycol]<200) {
    * * if (w3c) {
    * * * mtmp=document.getElementById("Mx"+(m_copo[ycol]-101)+"y"+ycol);
    * * * mtmp.firstChild.nodeValue=String.fromCharCode(160);
    * * * mtem=document.getElementById("Mx"+(100+rows-m_copo[ycol]--)+"y"+ycol);
    * * * mtem.firstChild.nodeValue=String.fromCharCode(160);
    * * }
    * * else {
    * * * mtmp=document.all["Mx"+(m_copo[ycol]-101)+"y"+ycol];
    * * * mtmp.innerHTML=String.fromCharCode(160);
    * * * mtem=document.all["Mx"+(100+rows-m_copo[ycol]--)+"y"+ycol];
    * * * mtem.innerHTML=String.fromCharCode(160);
    * * }
    * * setTimeout("zoomer("+ycol+")", speed);
    * }
    }
    "Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program." - Linus Torvalds
    Anime Views Forums
    Bernie

  11. #10
    Join Date
    Feb 2008
    Posts
    10
    Thanks
    4
    Thanked 0 Times in 0 Posts

    Default

    Again, thank you very much.

Similar Threads

  1. Matrix Effect question
    By Robert13 in forum Dynamic Drive scripts help
    Replies: 3
    Last Post: 08-26-2007, 03:36 AM
  2. Help with Matrix Effect
    By Bornfree in forum Dynamic Drive scripts help
    Replies: 0
    Last Post: 03-22-2007, 11:01 PM
  3. Matrix effect code
    By .alias. in forum JavaScript
    Replies: 4
    Last Post: 03-25-2006, 05:56 PM
  4. Replies: 4
    Last Post: 01-23-2006, 10:41 PM
  5. Matrix effect and in-your-face-welcome
    By Beginner in forum Dynamic Drive scripts help
    Replies: 1
    Last Post: 11-04-2004, 01:28 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •