Ir al contenido principal

Las propiedades screenX , screenY , offsetLeft , offsetTop , screenTop , screenLeft

Introducción

A veces cuando necesitamos de la posición de un elemento HTML con respecto a su nodo padre para desarrollar por ejemplo un tipo de tooltip , o quizás también la posición del cursor para que sea acompañado de un mensaje. Toda esta información y más la podemos obtener de las propiedades del objeto window , y como siempre no todas las propiedades funcionan en todos los navegadores.

La propiedad screenX , screenY ( screenLeft, screenTop para IE)

Devuelve un entero igual a la distancia horizontal entre el lado izquierdo de la pantalla y el lado izquierdo del navegador( en el caso de screenX)  y para el caso de screenY es la distancia vertical.

Sintaxis: window.screenX

Observaciones :
  1.  screenX, screenY sólo funciona para IE a partir de la versión 9.
  2.  Podemos utilizar la propiedad screenLeft y screenTop para Internet Explorer.
  3.  En modo maximizado el navegador Firefox y Safari pueden devolver -8px en screenX y screenY.
  4.  El valor de screenTop en IE y Safari es la distancia de la parte superior de la pantalla a la parte superior de la página y no del navegador como en los otros navegadores. 

Ejemplo : Uso de screenX , screenY (para IE usar screenTop y screenLeft)
<script type="text/javascript">
    
    function posicion(){
 
        var msj = '';
 
        //screenTop y screenLeft funciona en todos los navegadores, pero no en Firefox
        if('screenTop' in window)
            msj+="\n screenTop : "+window.screenTop+" ,screenLeft : "+window.screenLeft;
 
        //screenX y screenY funciona en todos los navegadores excepto IE
        if('screenX' in window)
            msj+="\n screenY : "+window.screenY+" ,screenX : "+window.screenX;
  
        alert(msj);
    } 

</script>

<input type="button"  onclick="posicion()" value="obtener !">
Demostración

Comentarios

Entradas populares de este blog

Validar campo de texto sólo letras, números con javascript

En algunos casos necesitaremos que el usuario ingrese solamente letras en un campo de texto, impidiendo así el ingreso de números y caracteres especiales. Gracias a Javascript y HTML esto puede ser posible.   Método 1:  Podemos utilizar el atributo onkeypress devolviendo el valor de false, si es que se escribe un caracter distinto a la cadena que hemos definido (para el ejemplo es " áéíóúabcdefghijklmnñopqrstuvwxyz").   Método 2: Pasos a seguir: Crear una lista con todas las letras permitidas (a,b,c ... etc). Crear una lista de teclas especiales tales como (BackSpace , flecha izquierda, flecha derecha, Supr) estas son teclas permitidas aparte de las teclas permitidas en el primer paso.     Entendiendo el código En la línea 4 la sentencia String.fromCharCode(key) obteniene el caracter presionado por el usuario que añadiendo la sentencia toLowerCase() convertiríamos la letra a minúscula. Con esto guardamos la letra presionada por el usuario en la variabl

La propiedad Disabled en Javascript

Como atributo de un elemento HTML Ejemplo: "Solo añadiendo el atributo disabled". < input type = "button" value = "Desactivado" disabled /> < input type = "text" disabled /> < input type = "button" value = "Boton normal" /> Demostración: El botón y el campo de texto están desactivados Manipulando Disabled usando Javascript Ejemplo 1: Utilizando el "id" del campo de texto en este caso "miText". < script type = "text/javascript" > function Desactivar () { document . getElementById ( 'miText' ) . disabled = true ; } < /script > < input type = "button" value = "Desactivar" onclick = "Desactivar()" / > < input type = "text" id = "miText" / > Demostración: Dándole clic al botón se desactiva el campo de texto. Ejemplo 2:Utilizando el event

Validar campo de texto con javascript

Obligar al usuario a introducir un valor en un campo de texto perteneciente a un formulario se puede hacer de la siguiente manera con javascript. Código < script type = "text/javascript" > function validar () { //obteniendo el valor que se puso en campo text del formulario miCampoTexto = document . getElementById ( "miCampo" ) . value ; //la condición if ( miCampoTexto . length == 0 ) { return false ; } return true ; } </ script > < form action = "mipagina.php" onsubmit = "return validar()" > < input type = "text" id = " miCampo " name = "miCampo" > < br > < input type = "submit" value = "Enviar" > </ form > miCampoTexto.length -> indica el número de caracteres del texto introducido En esta validación los usuarios deben llenar los campos