Comunidad de diseño web y desarrollo en internet online

Problema con Prototype

Citar            
MensajeEscrito el 14 Jul 2009 02:22 am
Hola me estoy metiendo de lleno en el tema de javascript pero me encuentro con algunas cosas que no le encuentro la vuelta de porque estan programadas de dicha forma.
espero que me puedan sacar esta duda porque buscando no encuentro nada relacionado con esto.


Código :

function pausescroller (content, divId, divClass, delay){
   this.content = content //Array con los mensajes de contenido
   this.tickerid = divId //le pasamos el nombre de la clase que va a tener el recuadro donde pasaran las noticias
   this.delay = delay //Tiempo entre cada pasada de los mensajes
   this.mouseoverBol = 0 //Boolean to indicate whether mouse is currently over scroller (and pause it if it is)
   this.hiddendivpointer = 1 //index of message array for hidden div
   document.write('<div id="'+divId+'" class="'+divClass+'" style="position: relative; overflow: hidden"><div class="innerDiv" style="position: absolute; width: 100%" id="'+divId+'1">'+   content[0]+'</div><div class="innerDiv" style="position: absolute; width: 100%; visibility: hidden" id="'+divId+'2">'+content[1]+'</div></div>')
   var scrollerinstance=this
   if (window.addEventListener) //run onload in DOM2 browsers
      window.addEventListener("load", function(){scrollerinstance.initialize()}, false)
   else if (window.attachEvent) //run onload in IE5.5+
      window.attachEvent("onload", function(){scrollerinstance.initialize()})
   else if (document.getElementById) //if legacy DOM browsers, just start scroller after 0.5 sec
      setTimeout(function(){scrollerinstance.initialize()}, 500)
}

pausescroller.prototype.initialize = function(){
   this.tickerdiv=document.getElementById(this.tickerid)
   this.visiblediv=document.getElementById(this.tickerid+"1")
   this.hiddendiv=document.getElementById(this.tickerid+"2")
   this.visibledivtop = parseInt(pausescroller.getCSSpadding(this.tickerdiv))
   //set width of inner DIVs to outer DIV's width minus padding (padding assumed to be top padding x 2)
   this.visiblediv.style.width=this.hiddendiv.style.width=this.tickerdiv.offsetWidth-(this.visibledivtop*2)+"px"
   this.getinline(this.visiblediv, this.hiddendiv)
   this.hiddendiv.style.visibility="visible"
   var scrollerinstance=this
   document.getElementById(this.tickerid).onmouseover=function(){scrollerinstance.mouseoverBol=1}
   document.getElementById(this.tickerid).onmouseout=function(){scrollerinstance.mouseoverBol=0}
   if (window.attachEvent) //Clean up loose references in IE
      window.attachEvent("onunload", function(){scrollerinstance.tickerdiv.onmouseover=scrollerinstance.tickerdiv.onmouseout=null})
      setTimeout(function(){scrollerinstance.animateup()}, this.delay)
}






mi siguiente duda es, que signifca setTimeout(function(){scrollerinstance.initialize()}, 500)
lo que entiendo es que la funcion initialize se va a ejecutar tras 0.5 segundos, despues nose si me equivoco si digo que se pone scrollerinstance para hacer referencia al div donde estoy trabajando?? ya que a ese se le pasa como parametro this.

y la otra consulta es porque cuando se crea la funcion initialize se hace de la siguiente forma:

pausescroller.prototype.initialize = function(){

pausescroller.prototype que funcion cumple esto ?
pasarme el parametro de scrollerinstance. porque no entiendo su funcionalidad.

bueno espero haber sido claro y que me puedan ayudar.
Saludos y gracias :)

Por 22

79 de clabLevel



 

Uruguay

msie7
Citar            
MensajeEscrito el 14 Jul 2009 01:47 pm
otra consulta que ya de mientras la hago en este mismo tema.
yo ya programo en php y actionscript 3.0
es decir que ya manejo el tema de condicionales loops etc.
la pregunta es si alguien conoce algun buen libro que trate sobre javascript pero mas enfocado
al DOM y no a explicar el uso de condicionales loops que ya se como funcionan.

Saludos

Por 22

79 de clabLevel



 

Uruguay

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.