Foros del Web » Programando para Internet » Javascript »

Utilizar las teclas direccionales para seleccionar un item

Estas en el tema de Utilizar las teclas direccionales para seleccionar un item en el foro de Javascript en Foros del Web. Una consulta..... he notado un detalle, y es que cuando utilizo este script en una página que tiene la barra de scroll vertical, pues ni ...

  #31 (permalink)  
Antiguo 09/04/2012, 12:24
Avatar de freesoftwarrior  
Fecha de Ingreso: marzo-2006
Mensajes: 362
Antigüedad: 18 años, 2 meses
Puntos: 10
Respuesta: Utilizar las teclas direccionales para seleccionar un item

Una consulta..... he notado un detalle, y es que cuando utilizo este script en una página que tiene la barra de scroll vertical, pues ni modo, al empezar a usar las flechas no sólo me muevo por los resultados de la consulta sino también muevo la página completa..... ¿hay alguna forma de evitar esto?

Gracias por el apoyo.
Un saludo desde Lima, Perú
  #32 (permalink)  
Antiguo 09/04/2012, 19:39
Avatar de freesoftwarrior  
Fecha de Ingreso: marzo-2006
Mensajes: 362
Antigüedad: 18 años, 2 meses
Puntos: 10
Respuesta: Utilizar las teclas direccionales para seleccionar un item

Solucionado...... basta con poner el script en un iframe y modificar la acción de carga y pasar variables.....
  #33 (permalink)  
Antiguo 10/04/2012, 01:42
 
Fecha de Ingreso: enero-2012
Ubicación: Santiago de Surco, Lima - Perú
Mensajes: 266
Antigüedad: 12 años, 3 meses
Puntos: 57
Respuesta: Utilizar las teclas direccionales para seleccionar un item

Cita:
Iniciado por freesoftwarrior Ver Mensaje
Solucionado...... basta con poner el script en un iframe y modificar la acción de carga y pasar variables.....
No entendí muy bien la idea y me interesa tu solución. Podrías ser más específico?

Gracias
  #34 (permalink)  
Antiguo 10/04/2012, 05:31
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Utilizar las teclas direccionales para seleccionar un item

el problema lo crea scrollIntoView. a este método se le pasa un boleano (true o false). la solución es usar false, pero hay que estar seguro de que la página tiene scroll
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #35 (permalink)  
Antiguo 10/04/2012, 06:22
Avatar de freesoftwarrior  
Fecha de Ingreso: marzo-2006
Mensajes: 362
Antigüedad: 18 años, 2 meses
Puntos: 10
Respuesta: Utilizar las teclas direccionales para seleccionar un item

Gracias por la información IsaBelM pues no todas las páginas podré aplicarles el iframe que hice para esta.

gebremswar te explico como hice. La rutina la tengo en una página previos.asp y está con enlaces link y script de esta forma

Cita:
<link href="../setup/ajax/ingAjaxPrevios.css?<%= varControl %>" rel="stylesheet" type="text/css">

<script src="../setup/ajax/ingAjaxPrevios.js?<%= varControl %>" type="text/javascript"></script>
La variable varControl es un número aleatorio, idea que tome cuando empecé con el tema de Ajax, pues en el tutorial que leí (vídeo tutorial por cierto, voy a ver si lo encuentro para postearlo pero paciencia, eso fue hace años), sugerían que para que la invocación a la rutina de consulta de la base de datos, sería bueno poner un valor nuevo siempre para que el script no tome el caché de la previa consulta, así:

Cita:
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
de manera tal que el varContrl viene a emular al Math.random().

Entonces dividí la página en 2 secciones con un
Cita:
If Then... Else... End If
de esta forma

Cita:
If Request("vercontenido")=0 Then

... aquí toda la rutina de carga de variables, CSS y JS necesarios para crear los comobo box o select que se necesita (y otras cosas más) así como los archivos ajax tanto CSS como JS.

<iframe src="previos.asp?vercontenido=1" name="listado" id="listado" width="100%" height="360" frameborder="0" AllowTransparency></iframe>

Else

... aquí va toda la rutina que arma las tablas muestra el contenido de la consulta, lo que hace que la página (o ventana adicional, igual es para ambos conceptos) muestre el scroll vertical.

End If

Este iframe puede tener, obviamente, el scroll vertical habilitado, y es claro que si hay algunos CSS o JS que son necesarios no los incluyo dentro de las condicional
Cita:
if request("vercontenido")=0 then
sino que los dejo "libres" para que se muestren tanto si la variable es 1 o 0.

Cómo te das cuenta, el iframe se encuentra en la sección en que NO estará presente la rutina de listado. y de esa forma puede usar el script de Ajax y al utilizar las teclas, no afectará para nada el o los scrolls presentes en el iframe.

Obviamente la solución de IsaBelM es la apropiada para páginas en que NO SERÁ POSIBLE el implementar un iframe pero a mi me resultó doblemente útil porque así el tiempo de carga de la página, al final, con el iframe se ha reducido significativamente.

Espero haberme explicado bien, sino me consultas.

Un saludo desde Lima, Perú

Etiquetas: ajax
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 12:23.