Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/07/2010, 11:11
sitoatic
 
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 15 años, 6 meses
Puntos: 1
Posición del mouse en la pantalla

Buenas,

Llevo demasiadas horas con esto y me estoy volviendo algo loco ya @_@

Estoy tratando de hacer que un div aparezca en pantalla cuando me coloco sobre un link. Hasta ahí casi perfecto, el div aparece y demás.

El problema es la posición que yo le doy. Para empezar en Firefox no me hace caso de nada de las coordenadas, y en Internet Explorer me hace caso, pero cuando la ventana está intacta, con la scrollbar arriba del todo, a la que la scrollbar la he movido ya la posición se pierde también. A ver si alguien sabe cómo arreglar esto o si lo estoy haciendo por mal camino, alguna idea para hacerlo mejor. El código que tengo es:

Código:
function tendAjax (url,current_event,this_link)
{
   //alert("llamada ok");
   var ajax=creaAjax();
   var my_tooltip = document.getElementById("cuotasAnteriores");
   
   var cursor_position_x;
   var cursor_position_y;
			
   if(document.all){
       cursor_position_x = event.clientX;
	   cursor_position_y = event.clientY;
	   //alert("documento(1), pos x: "+cursor_position_x+", pos y: "+cursor_position_y);
  	   //tip_text += " (Todo, x=" + cursor_position_x + ", y=" + cursor_position_y +")";
   }
   else if(document.getElementById){
	   cursor_position_x = current_event.pageX;
  	   cursor_position_y = current_event.pageY;
	   //alert("evento(2), pos x: "+cursor_position_x+", pos y: "+cursor_position_y);
 	   //tip_text += " (click, x=" + cursor_position_x + ", y=" + cursor_position_y +")";
   }		

	ajax.open ('GET', url, true);
	ajax.onreadystatechange = function() {
						
		if (ajax.readyState==4){
			if(ajax.status==200){ 
				//alert("hay tema");
				with(my_tooltip){
					tip_text = ajax.responseText;
					var text_tooltip = "<div align='left' style='text-align:left;font-size:8pt;width:200px;font-family:Arial,Helvetica;border:1px solid;padding:5px;'>"+tip_text+"</div>";
					innerHTML = tip_text;
					style.left = cursor_position_x;
					style.top = cursor_position_y;           
					style.visibility = "visible";
		   		}
			}
			else if(ajax.status==404)
				 {
					 my_tooltip.innerHTML = "La direccion no existe";
				 }
				 else
				 {
					 my_tooltip.innerHTML = "Error: ".ajax.status;
				 }
			}
		}
		ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		ajax.send(null);
		return
	
	this_link.onmouseout = hide_tooltip;
}
Gracias!!