Ver Mensaje Individual
  #2 (permalink)  
Antiguo 10/12/2008, 21:53
Avatar de Panino5001
Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 7 meses
Puntos: 834
Respuesta: Mostrar ventana en la posición de un botón

En realidad podrías solucionarlo con css sin problemas. Con javascript hay varias posibilidades, pero ya que el formulario está casi al final de la página y seguramente no vas a cambiar su ubicación respecto del pie de la página, podrías usar el final de la página como medida de referencia y posicionarlo con un valor constante respecto de ese punto (en este ejemplo llamé delta a ese valor):
Código PHP:
<script>
function 
getWindowData(){
    var 
widthViewport,heightViewport,xScroll,yScroll,widthTotal,heightTotal;
    if (
typeof window.innerWidth != 'undefined'){
        
widthViewportwindow.innerWidth-17;
        
heightViewportwindow.innerHeight-17;
    }else if(
typeof document.documentElement != 'undefined' && typeof document.documentElement.clientWidth !='undefined' && document.documentElement.clientWidth != 0){
        
widthViewport=document.documentElement.clientWidth;
        
heightViewport=document.documentElement.clientHeight;
    }else{
        
widthViewportdocument.getElementsByTagName('body')[0].clientWidth;
        
heightViewport=document.getElementsByTagName('body')[0].clientHeight;
    }
    
xScroll=self.pageXOffset || (document.documentElement.scrollLeft+document.body.scrollLeft);
    
yScroll=self.pageYOffset || (document.documentElement.scrollTop+document.body.scrollTop);
    
widthTotal=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth,widthViewport);
    
heightTotal=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight,heightViewport);
    return [
widthViewport,heightViewport,xScroll,yScroll,widthTotal,heightTotal];

function 
posicionar(){
    var 
delta='500';
    var 
pos=getWindowData();
    
document.getElementById('win').style.top=(pos[5]-delta)+'px';
}
</script>
</head>
<body onLoad="iniciar();posicionar()">