Foros del Web » Programando para Internet » Javascript » Frameworks JS »

ancla

Estas en el tema de ancla en el foro de Frameworks JS en Foros del Web. Hola, como hago para ejecutar un ancla luego de una respuesta en ajax? (en un div) se pone el location en la misma funcion?...
  #1 (permalink)  
Antiguo 20/07/2009, 17:37
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 10 meses
Puntos: 9
ancla

Hola, como hago para ejecutar un ancla luego de una respuesta en ajax? (en un div) se pone el location en la misma funcion?
__________________
Quitenme la vida pero no la bebida.
  #2 (permalink)  
Antiguo 20/07/2009, 22:25
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: ancla

¿A que te refieres con ejecutar un ancla?

Saludos.
  #3 (permalink)  
Antiguo 21/07/2009, 09:24
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 10 meses
Puntos: 9
Respuesta: ancla

es que con ajax genero una tabla de horarios y es largisima y yo pregunto por la celda que tiene la hora actual, le agrego un ancla (anchor) para que cuando se genere la tabla... la pagina salte donde este marcado la hora... pero parece que no funciona despues de haber generado esa tabla... habra alguna manera de preguntar cuando esa tabla se genere que se ejecute esa ancla?
__________________
Quitenme la vida pero no la bebida.
  #4 (permalink)  
Antiguo 21/07/2009, 09:53
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: ancla

Si muestras el código de cómo generas la tabla y accedes al ancla será más fácil ayudarte.

Saludos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 21/07/2009, 10:58
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 10 meses
Puntos: 9
Respuesta: ancla

Bueno disculpa si no lo publico porque la tabla la genero con php y crei que no era el foro adecuado , pero ahi va lo importante:

Código PHP:
<?php
//marco la hora actual dentro del rango del horario
$ahora date("H:i",mktime(date("H"),0));

if(
date("H:i"$timeInicio)==$ahora){
    
$bghora='#FFCACA';
}
else{
    
$bghora='#FFFFFF';
}
?>
<tr>
    <td height="1" colspan="15" bgcolor="#333333"></td>
  </tr>
  <tr>
    <td height="25" align="center" bgcolor="<?php echo $bghora?>" class="fontHora">
<?php if($bghora=='#FFCACA'){ echo '<a name="direction">';} ?>
<?php 
echo date("H:i"$timeInicio);  ?>
<?php 
if($bghora=='#FFCACA'){ echo '</a>';} ?>
   </td> 
...
Bueno la tabla la genero con un bucle ... peor lo importante que muestro aqui es cuando pregunto por la hora actual y pregunto si es que la celda esta marcada.... inserto un ancla... ahora ... como hago para que en la pagina principal salte al ancla luego de generar esa tabla con el ajax.

esto funcionaria si se ejecutara directamente y al cargar la pagina:

Código:
<script language="javascript">
window.onload = function() {
    location.hash = "direction";
}
</script>
ahora como pondria este js para que se ejecute despues que se llene el div donde sale el resultado del ajax
__________________
Quitenme la vida pero no la bebida.
  #6 (permalink)  
Antiguo 21/07/2009, 11:40
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: ancla

No deberías hacerlo en el evento onload. Más bien, debes hacerlo al momento de recibir la respuesta, por ejemplo:
Código javascript:
Ver original
  1. peticion.onreadystatechange = function() {
  2.     if (peticion.readyState == 4) {
  3.         /* Cargar contenido */
  4.         /* Ir al ancla */
  5.     }
  6. }
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 21/07/2009, 12:42
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 10 meses
Puntos: 9
Respuesta: ancla

hola gracias por tu respuesta... pero que vendria a ser "peticion", el id del div? y donde pondria esa funcion ... en la pagina donde tengo el div que muestra los resultados?
__________________
Quitenme la vida pero no la bebida.
  #8 (permalink)  
Antiguo 21/07/2009, 12:44
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: ancla

peticion es tu objeto XMLHttpRequest() con que realizas la petición. Si estás realizando una petición usando Ajax se supone que ya tienes asignado el evento onreadystatechange para que al ser readyState = 4 coloques en el elemento deseado el resultado.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 21/07/2009, 14:44
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 10 meses
Puntos: 9
Respuesta: ancla

a verdad, eso estaba en la funcion ajax no me acordaba

solo me falto eso

Código:
	ajax.onreadystatechange=function(){
		if (ajax.readyState==4) {
			c.innerHTML = ajax.responseText
			location.hash = "direction";
		}
	}
ya me funciono, muchas gracias
__________________
Quitenme la vida pero no la bebida.
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 06:25.