Foros del Web » Programando para Internet » Javascript »

Posicionable

Estas en el tema de Posicionable en el foro de Javascript en Foros del Web. Vereis estoy realizando una pagina web para la facultad y tengo algun que otro problemita con JavaScript. Problema 1: Posicionable. Esta es una funcion que ...
  #1 (permalink)  
Antiguo 21/06/2010, 18:06
 
Fecha de Ingreso: junio-2010
Mensajes: 15
Antigüedad: 13 años, 10 meses
Puntos: 0
Mensaje Posicionable

Vereis estoy realizando una pagina web para la facultad y tengo algun que otro problemita con JavaScript.

Problema 1: Posicionable.
Esta es una funcion que se debe ejecutar cuando se redimensiona la pagina. La cuestion es que con esa funcion debemos obtener un valor (left de CSS) idoneo de donde debemos colocar un div, me explico, Cuando posicionamos un div con CSS en el centro, esto funciona sin problemas, pero cuando aparece la barra lateral de desplazamiento o scroll el centro ya no es el mismo (no coincide con los frames superiores y me obligan a usar frames). El codigo que he utilizado es el siguiente:
Código:
function posicionable() {
	// Obtenemos cuantos divs hay en la pagina.
	var NumDivs = document.getElementsByTagName('div').length;
	// Obtenemos los divs que hay en la pagina. Obtenemos un NodeList con todos ellos.
	var ListaDivs = document.getElementsByTagName('div');

	// Recorremos el NodeList, comprobando si pertenecen a la clase posicionable.
	for(var cont=0; cont < NumDivs; cont++){
		if(ListaDivs.item(cont).getAttribute('class') == 'posicionable'){
			// Si pertenecen a la clase posicionable 
			var maximo=(Math.max(document.documentElement.scrollWidth,document.documentElement.offsetWidth, document.body.offsetWidth));
			ListaDivs.item(cont).style.left=((maximo-770)/2)+"px";			
		}
	}
}
El problema es el de siempre, IE vs Firefox. ¿Como puedo obtener el ancho que ocupa el navegador con scroll y sin scroll y que funcione en todos los navegadores?

Problema 2: Posicion del puntero.
¿Como puedo obtener la posicion que ocupa el puntero (x,y) y que funcione en todos los navegadores?

Muchisimas gracias de antemano !
  #2 (permalink)  
Antiguo 21/06/2010, 20:48
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Posicionable

problema 1:
en teoria te debe funcionar bien en todos los navegadores incluso -creo- iexplorer8. sin embargo, en iexplorer7 y anteriores getAttributes no siempre trabaja de la forma correcta. por ejemplo, para obtener la clase de un elemento deberia ser getAttribute("class") pero iexplorer tiene la excepcion de que los atributos se deben escribir como nombre de propiedades. es decir, getAttribute("className"). pero parece que en iexplorer8 ya lo arreglaron, por tanto revisa tu version de iexplorer.

problema 2:
para leer la posicion del puntero necesitas generar un objeto evento relacionado al puntero. una vez obtenido el objeto lees las propiedades clientX y clientY de dicho objeto.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Etiquetas: compatibilidad, navegadores, posicion, posicionamiento, tamaño
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:40.