Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/12/2005, 07:34
MariaMG
 
Fecha de Ingreso: diciembre-2005
Mensajes: 10
Antigüedad: 18 años, 4 meses
Puntos: 0
Obtencion propiedades CSS mediante ID

Hola a todos:

Mi problema es el siguiente: no puedo acceder a las propiedades definidas en la hoja de estilos para un imagen a la que asigno un identificador (id="imagen") y por extension a las propiedades de ningun otro identificador. Utilizo getElementById() y style pero no se lo que falla. La consola javascript del firefox no da ningun error.

Os envio parte del codigo para que me digais donde esta el error:
En el primer alert no escribe nada para el color
En el segundo dice que la variable no es null.
En el tercero el resultado del parseInt es NaN
Conclusion:no accede a las propiedades del CSS.

<html>

<head>
<STYLE TYPE="text/css">
body { background-color:rgb(0,230,0)}
#imagen {
position:absolute;
left:100px;
top:100px;
z-index:2;
}
#algo { background-color:blue;
color:yellow;
font-weight:bold;
}
</STYLE>

</head>

<body>

<form name=exf1>
<table border=1>
<tr><td colspan=2>Position Of Cursor</td></tr>
<tr><td>X <input type=text name=x value="<unknown>"></td>
<td>Y <input type=text name=y value="<unknown>"></td>
</tr>
</table>
</form>

<span ID="algo">A ver si esto lo cambia</span>
<script type=text/javascript>
alert("color del span "+document.getElementById("algo").style.color) ;
</script>

<img ID="imagen" src="wms.jpeg" width="500" height="600">

<script type=text/javascript>
var isIE = document.all?true:false;
if (!isIE) document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = getMousePosition;
function getMousePosition(e) {
var _x;
var _y;
var imag;
if (!isIE) {
_x = e.pageX;
_y = e.pageY;
}
if (isIE) {
_x = event.clientX + document.body.scrollLeft;
_y = event.clientY + document.body.scrollTop;
}

imag = document.getElementById("imagen");
if (imag==null) alert("no lee bien la imagen");
else alert("imagen metida en variable");

imagenX = _x - parseInt(imag.style.left) -
imag.width/2;
alert("valor estilo left " + parseInt(imag.style.left));


Os agradezco un monton vuestra ayuda.
De paso: Felices Fiestas.
Un beso.