Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/09/2008, 00:19
Avatar de salbatore
salbatore
 
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 19 años, 5 meses
Puntos: 19
Doctype y javascript

Hola, foreros,

Me he vuelto loco buscando el error, jeje, pero tengo un javascript que solo funciona si quito el doctype, sea cual sea el tipo de doctype. Es que es raro raro...

Mirar el script, no lo puedo entender:
Código PHP:
        //Si el navegador del cliente es Mozilla la variable siguiente valdrá true
        
var moz = document.getElementById && !document.all;
        
//Flag que indica si estamos o no en proceso de arrastrar el ratón
        
var estoyArrastrando = false;
        
//Variable para almacenar un puntero al objeto que estamos moviendo
        
var dobj;
        var 
newLeft = 200;
        function 
arrastrarRaton(e){
        
campo_posicion_js = document.getElementById('campo_posicion');
        
            if (
estoyArrastrando & newLeft >= 200 & newLeft <= 300 ) {
                
newLeft = moz ? e.clientX : event.clientX;

                
dobj.style.left = newLeft - parseInt(dobj.style.width)/2;
                
campo_posicion_js.value=newLeft-200;
                return 
false;
            }
            else{
                if (
newLeft < 200) 
                    {
                        
newLeft = 200;
                        
dobj.style.left = 200;
                        
campo_posicion_js.value=newLeft-200;
                        
event.clientX = 200;
                        
                    }
                
                    if (
newLeft > 300) 
                    {
                        
newLeft = 300;
                        
dobj.style.left = 300;
                        
campo_posicion_js.value=newLeft-200;
                        
event.clientX = 300;
                        
                    }
                }
        }


        function 
soltarBoton(e) {    
            
estoyArrastrando = false;
        }
        
        
        function 
presionarBoton(e) {
            
//Obtenemos el elemento sobre el que se ha presionado el botón del ratón
            
var fobj = moz ? e.target : event.srcElement;
            
            
// Buscamos el primer elemento en la que esté contenido aquel sobre el que se ha pulsado
            // que pertenezca a la clase objMovible. 
            
while (fobj.tagName.toLowerCase() != "html" && fobj.className != "objMovible") {
                
fobj = moz ? fobj.parentNode : fobj.parentElement;
            }
            
            
// Si hemos obtenido un objeto movible...            
            
if (fobj.className == "objMovible") {
                
// Activamos el flag para indicar que se empieza a arrastrar
                
estoyArrastrando = true;
                
// Guardamos un puntero al objeto que se está moviendo en la variable global
                
dobj = fobj;

                
// Devolvemos false para no realizar ninguna acción posterior
                
return false;
            }
        }
        
        
document.onmousedown = presionarBoton;
        
document.onmouseup = soltarBoton;
        
document.onmousemove = arrastrarRaton;
        
        
        

        
document.oncontextmenu=new Function("return false"); 
¿Sabeis por que no va?, solo me lo puedo tomar a broma, pues de llorar ya me aburri,