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

Thread: Mouse-Over Image Change

  1. #1
    Join Date
    Aug 2010
    Posts
    19
    Thanks
    3
    Thanked 0 Times in 0 Posts

    Default Mouse-Over Image Change

    Hello,
    First of all I want to say sorry for my English, I'm from Holland.

    I've been working on this website lately but I got a little problem with the header // mouse-over.



    This is the header I'm talking about, let me try to explain how I want it to be.


    When I mouse-over the Home button the image of the parrots should fade-in to image 2 (the same parrot but then in color). When I move my mouse away from the button it should fade back to image 1 (the black/white)

    Now the advanced part, (IF possible)
    When I mouse over button 2 it should fade from image 1 (the black/white parrot) to image 3 (another picture of parrots, not the same one as image 1 and 2). And when I move my mouse away from the button it should fade to image 4 (the parrot without color)

    Can anyone help me with this script, or forward me to another website where they can help me. I really appericiate it

    Best Regards,
    Yannick :-)

  2. #2
    Join Date
    Dec 2008
    Location
    Portsmouth, UK
    Posts
    1,891
    Thanks
    2
    Thanked 441 Times in 435 Posts

    Default

    simplest

    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    
    <head>
      <title></title>
    <style type="text/css">
    /*<![CDATA[*/
    
    #tst {
      position:relative;width:200px;height:100px;
    }
    
    #tst IMG{
      position:absolute;left:0px;top:0px;width:200px;height:100px;
    }
    /*]]>*/
    </style>
    <script type="text/javascript">
    // Animate (11-January-2010)
    // by Vic Phillips http://www.vicsjavascripts.org.uk
    
    // To progressively change the Left, Top, Width, Height or Opacity of an element over a specified period of time.
    // With the ability to scale the effect time on specified minimum/maximum values
    // and with three types of progression 'sin' and 'cos' and liner.
    
    // **** Application Notes
    
    // **** The HTML Code
    //
    // when moving an element the inline or class rule style position of the element should be assigned as
    // 'position:relative;' or 'position:absolute;'
    //
    // The element would normally be assigned a unique ID name.
    //
    
    // **** Initialising the Script.
    //
    // The script is initialised by assigning an instance of the script to a variable.
    // e.g A = new zxcAnimate('left','id1')
    // where:
    //  A           = a global variable                                                               (variable)
    //  parameter 0 = the mode(see Note 1).                                                           (string)
    //  parameter 1 = the unique ID name or element object.                                           (string or element object)
    //  parameter 1 = the initial value.                                                              (digits, default = 0)
    
    // **** Executing the Effect
    //
    // The effect is executed by an event call to function 'A.animate(10,800 ,5000,[10,800]);'
    // where:
    //  A           = the global referencing the script instance.                                 (variable)
    //  parameter 0 = the start value.                                                            (digits, for opacity minimum 0, maximum 100)
    //  parameter 1 = the finish value.                                                           (digits, for opacity minimum 0, maximum 100)
    //  parameter 2 =  period of time between the start and finish of the effect in milliseconds. (digits or defaults to previous or 0(on first call) milliSeconds)
    //  parameter 3 = (optional) to scale the effect time on a specified minimum/maximum.         (array, see Note 3)
    //                 field 0 the minimum value. (digits)
    //                 field 1 the maximum value. (digits)
    //  parameter 3 = (optional) the type of progression, 'sin', 'cos' or 'liner'.                (string, default = 'liner')
    //                 'sin' progression starts fast and ends slow.
    //                 'cos' progression starts slow and ends fast.
    //
    //  Note 1:  Examples modes: 'left', 'top', 'width', 'height', 'opacity.
    //  Note 2:  The default units(excepting opacity) are 'px'.
    //           For hyphenated modes, the first character after the hyphen must be upper case, all others lower case.
    //  Note 3:  The scale is of particular use when re-calling the effect
    //           in mid progression to retain an constant rate of progression.
    //  Note 4:  The current effect value is recorded in A.data[0].
    //  Note 5:  A function may be called on completion of the effect by assigning the function
    //           to the animator intance property .Complete.
    //           e.g. [instance].Complete=function(){ alert(this.data[0]); };
    //
    
    
    
    // **** Functional Code(1.52K) - NO NEED to Change
    
    function zxcAnimate(mde,obj,srt){
     this.to=null;
     this.obj=typeof(obj)=='object'?obj:document.getElementById(obj);
     this.mde=mde.replace(/\W/g,'');
     this.data=[srt||0];
     return this;
    }
    
    zxcAnimate.prototype={
    
     animate:function(srt,fin,ms,scale,c){
      clearTimeout(this.to);
      this.time=ms||this.time||0;
      this.neg=srt<0||fin<0;
      this.data=[srt,srt,fin];
      this.mS=this.time*(!scale?1:Math.abs((fin-srt)/(scale[1]-scale[0])));
      this.c=typeof(c)=='string'?c.charAt(0).toLowerCase():this.c?this.c:'';
      this.inc=Math.PI/(2*this.mS);
      this.srttime=new Date().getTime();
      this.cng();
     },
    
     cng:function(){
      var oop=this,ms=new Date().getTime()-this.srttime;
      this.data[0]=(this.c=='s')?(this.data[2]-this.data[1])*Math.sin(this.inc*ms)+this.data[1]:(this.c=='c')?this.data[2]-(this.data[2]-this.data[1])*Math.cos(this.inc*ms):(this.data[2]-this.data[1])/this.mS*ms+this.data[1];
      this.apply();
      if (ms<this.mS) this.to=setTimeout(function(){oop.cng()},10);
      else {
       this.data[0]=this.data[2];
       this.apply();
       if (this.Complete) this.Complete(this);
      }
     },
    
     apply:function(){
      if (isFinite(this.data[0])){
       if (this.data[0]<0&&!this.neg) this.data[0]=0;
       if (this.mde!='opacity') this.obj.style[this.mde]=Math.floor(this.data[0])+'px';
       else zxcOpacity(this.obj,this.data[0]);
      }
     }
    
    }
    
    function zxcOpacity(obj,opc){
     if (opc<0||opc>100) return;
     obj.style.filter='alpha(opacity='+opc+')';
     obj.style.opacity=obj.style.MozOpacity=obj.style.WebkitOpacity=obj.style.KhtmlOpacity=opc/100-.001;
    }
    
    
    </script>
    
    
    
    </head>
    
    <body>
    <input type="button" name="" value="Item 0" onmouseover="f1.GoTo(1);" onmouseout="f1.GoTo(0);" />
    <input type="button" name="" value="Item 1" onmouseover="f1.GoTo(2);" onmouseout="f1.GoTo(0);" />
    <input type="button" name="" value="Item 2" onmouseover="f1.GoTo(3);" onmouseout="f1.GoTo(0);" />
    <input type="button" name="" value="Item 3" onmouseover="f1.GoTo(4);" onmouseout="f1.GoTo(0);" />
    
    <div id="tst" >
     <img src="http://www.vicsjavascripts.org.uk/StdImages/Five.gif" />
     <img src="http://www.vicsjavascripts.org.uk/StdImages/Four.gif" />
     <img src="http://www.vicsjavascripts.org.uk/StdImages/Three.gif"  />
     <img src="http://www.vicsjavascripts.org.uk/StdImages/Two.gif"  />
     <img src="http://www.vicsjavascripts.org.uk/StdImages/One.gif"  />
    </div>
    
    <script type="text/javascript">
    /*<![CDATA[*/
    
    function zxcFade(o){
     var p=document.getElementById(o.ID);
     var imgs=p.getElementsByTagName('IMG');
     this.imgs=[];
     for (var ud,z0=imgs.length-1;z0>=0;z0--){
      ud=z0<imgs.length-1
      imgs[z0].style.zIndex=ud?'0':'1';
      this.imgs.push(new zxcAnimate('opacity',imgs[z0],ud?0:100));
      zxcOpacity(imgs[z0],ud?0:100);
     }
     this.ms=o.Duration||1000;
     this.lst=0;
    }
    
    zxcFade.prototype.GoTo=function(nu){
     if (this.imgs[nu]){
      this.imgs[this.lst].obj.style.zIndex='0';
      this.imgs[this.lst].animate(this.imgs[this.lst].data[0],0,this.ms,[0,100]);
      this.lst=nu;
      this.imgs[this.lst].obj.style.zIndex='1';
      this.imgs[this.lst].animate(this.imgs[this.lst].data[0],100,this.ms,[0,100]);
     }
    }
    
    
    var f1=new zxcFade({
     ID:'tst',
     Duration:1000
    });
    /*]]>*/
    </script>
    
    </body>
    
    </html>
    this can be made more refined if required
    Vic
    God Loves You and will never love you less.
    http://www.vicsjavascripts.org/Home.htm
    If my post has been useful please donate to http://www.operationsmile.org.uk/

  3. The Following User Says Thank You to vwphillips For This Useful Post:

    yannickjeh (08-18-2010)

  4. #3
    Join Date
    Aug 2010
    Posts
    19
    Thanks
    3
    Thanked 0 Times in 0 Posts

    Default

    Wow, I hope I can get this working. Thanks so much!

    I will post the result or when I have troubles with the script as soon as possible.

    Once again thanks

  5. #4
    Join Date
    Aug 2010
    Posts
    19
    Thanks
    3
    Thanked 0 Times in 0 Posts

    Default

    Love your script! Exactly what I was looking for, I got a few problems though.

    I can't manage to place it in my layout, the mouse over stops working.. Could you please help me?

    Sorry for my questions, I'm terrible at javascript coding.

    Thanks for your help, I really apericiate it

    Best regards,
    Yannick
    Last edited by yannickjeh; 08-18-2010 at 10:54 AM.

  6. #5
    Join Date
    Dec 2008
    Location
    Portsmouth, UK
    Posts
    1,891
    Thanks
    2
    Thanked 441 Times in 435 Posts

    Default

    you will need to post a link to your page
    Vic
    God Loves You and will never love you less.
    http://www.vicsjavascripts.org/Home.htm
    If my post has been useful please donate to http://www.operationsmile.org.uk/

  7. #6
    Join Date
    Aug 2010
    Posts
    19
    Thanks
    3
    Thanked 0 Times in 0 Posts

    Default

    Sorry I totally forgot, so busy with the website haha

    www.papegaaiengedrag.nl

    I also can't manage to center my web-page.. I tried everything but nothing seems to work, do you maybe know a solution for this problem too?

  8. #7
    Join Date
    Dec 2008
    Location
    Portsmouth, UK
    Posts
    1,891
    Thanks
    2
    Thanked 441 Times in 435 Posts

    Default

    see attachment
    Vic
    God Loves You and will never love you less.
    http://www.vicsjavascripts.org/Home.htm
    If my post has been useful please donate to http://www.operationsmile.org.uk/

  9. The Following User Says Thank You to vwphillips For This Useful Post:

    yannickjeh (08-19-2010)

  10. #8
    Join Date
    Aug 2010
    Posts
    19
    Thanks
    3
    Thanked 0 Times in 0 Posts

    Default

    Your awesome, thanks so much!

    Also I need help on centering my website.. do you have any idea on how to do this?

    Best Regards and thanks again,
    Yannick

  11. #9
    Join Date
    Jul 2010
    Location
    Bridport, Dorset
    Posts
    58
    Thanks
    6
    Thanked 1 Time in 1 Post

    Default

    Which browser are you using..
    I use Chrome, it is left aligned there,
    but IE8 it is centred..
    Thought i would let you know...

    I can not view your source, disable right click script hey? :P

    view-source:http://www.papegaaiengedrag.nl/
    works in chrome... heehee

  12. #10
    Join Date
    Aug 2010
    Posts
    19
    Thanks
    3
    Thanked 0 Times in 0 Posts

    Default

    It's not centered on Firefox,
    Neither on my iPhone and iPad.. (safari)

    I tried almost everything but I can't get it centered well

    Yes I disabled right clicking because there will be copyrighted pictures on it. And the person who requested me to build this website wanted it this way.

    So if anyone can tell me how to center for ALL browsers it would be great.

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
  •