Results 1 to 3 of 3

Thread: Need help with Moving Light on Image script

  1. #1
    Join Date
    Jan 2011
    Posts
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default Need help with Moving Light on Image script

    1) Script Title: Moving Light on Image Script

    2) Script URL (on DD): http://dynamicdrive.com/dynamicindex4/imagelight.htm

    3) Describe problem: I've added this script successfully to a page, but it's very dark overall. I would like to lighten up the whole appearance so that you can see the image clearly even when the moving light isn't trailing over it. As it is now, it's completely dark when the moving light isn't shining on it. Any help is greatly appreciated!

  2. #2
    Join Date
    Mar 2005
    Location
    SE PA USA
    Posts
    30,495
    Thanks
    82
    Thanked 3,449 Times in 3,410 Posts
    Blog Entries
    12

    Default

    Changes highlighted line, change red. Additions highlighted line:

    Code:
    <script language="JavaScript1.2">
    
    /*
    Moving light on image script
    © Dynamic Drive (www.dynamicdrive.com)
    For full source code, installation instructions,
    100's more DHTML scripts, and Terms Of
    Use, visit dynamicdrive.com
    */
    
    
    if (document.all&&window.spotlight){
    var x=new Array()
    var direction=new Array()
    var y=new Array()
    if (spotlight.length==null){
    spotlight[0]=document.all.spotlight
    x[0]=0
    direction[0]="right"
    y[0]=spotlight[0].height/2
    spotlight[0].filters.light.addPoint(100,50,100,255,255,255,90)
    spotlight[0].filters.light.addAmbient(100, 100, 100, 50);
    }
    else
    for (i=0;i<spotlight.length;i++){
    x[i]=0
    direction[i]="right"
    y[i]=spotlight[i].height/2
    spotlight[i].filters.light.addPoint(100,50,100,255,255,255,90)
    spotlight[i].filters.light.addAmbient(100, 100, 100, 50);
    }
    }
    
    function slidelight(cur){
    spotlight[cur].filters.light.MoveLight(0,x[cur],y[cur],200,-1)
    
    if (x[cur]<spotlight[cur].width+200&&direction[cur]=="right")
    x[cur]+=10
    else if (x[cur]>spotlight[cur].width+200){
    direction[cur]="left"
    x[cur]-=10
    }
    else if (x[cur]>-200&&x[cur]<-185){
    direction[cur]="right"
    x[cur]+=10
    }
    else{
    x[cur]-=10
    direction[cur]="left"
    }
    }
    
    if (document.all&&window.spotlight){
    if (spotlight.length==null)
    setInterval("slidelight(0)",spotlight[0].speed)
    else
    for (t=0;t<spotlight.length;t++){
    var temp='setInterval("slidelight('+t+')",'+spotlight[t].speed+')'
    eval(temp)
    }
    }
    </script>
    Notes:

    • The added /2 centers the spotlight vertically. This is an issue once we use the addAmbient method because where the light is becomes more noticeable.


    • You can adjust the addAmbient method:

      Code:
      addAmbient(iRed, iGreen, iBlue, iStrength)
      The iColor values are 0 to 255 each and the iStrength value is the intensity, 0 to 100. From:

      http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
    - John
    ________________________

    Show Additional Thanks: International Rescue Committee - Donate or: The Ocean Conservancy - Donate or: PayPal - Donate

  3. #3
    Join Date
    Jan 2011
    Posts
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default

    John,

    You're the best! Thanks so much for your help with this.

    susanivan

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
  •