Tengo algunos htmls de elementos, cada uno de los cuales contiene una sola página JQM. También tengo una página de índice. Es un html multi-JQM-paged, con cada página JQM como una categoría que enumera los elementos.Cómo anular ajax = false para que cambie a la página dom cargada si existe
index.html item1.html item2.html
+------------------+ +--------+--------+ +--------
|+-------+ | +--|Cat. | Next|->|Cat.
||.cont- | | | +--------+--------+ |--------
||ent |+-------+|<----+ | | |
|+-------+|#cat1 || | | |
| | || |bla bla bla | |bla bla
| |link1+---------->| | |
| |link2 || | | |
| +-------+| +-----------------+ +--------
|+-------++-------+|
||#cat2 ||#cat3 ||
|| || ||
||link4 ||link3 ||
|| || ||
|+-------++-------+|
+------------------+
Actualmente puedo vincular desde el índice al elemento, con una carga suave de ajax. Sin embargo, me di cuenta de que si quiero vincular el elemento al índice # cat1, necesito usar data-ajax='false'
ya que el índice es un html de varias páginas. (No puedo usar data-rel='back'
porque la página anterior no siempre es index.html).
Si uso ajax='false'
, pierdo la transición suave si cambio a menudo entre la lista y los elementos (cada cambio a la lista es una recarga completa). por ejemplo:
-load- Full> N.º cat1 -ajax-load-> elemento2 -Full-carga (de nuevo) -> N.º cat1
Pregunta
Quiero:
-Full-load-> N.º cat1 -ajax-load-> elemento2 -ajax-switch-to-Ya-loaded-> N.º cat1
¿Cómo puedo anular la lógica jQuery Mobile para que cuando se hace clic en el enlace data-ajax='false'
, se busca primero para ver si esa página de índice # cat1 ya está en el dom? Si es así, simplemente cambie a esa página JQM. Si no existe, realice una carga completa del índice # cat1 sin ajax (como el comportamiento predeterminado).
Tenga en cuenta que un usuario puede comenzar desde item1.html y navegar hasta index.html # cat1.
Sé que necesitaría marcar cada página JQM con algunos atributos personalizados, como data-full-url="index.html#cat1"
para facilitar la búsqueda de páginas existentes. Sin embargo, mi principal debilidad es cómo puedo cambiar la lógica de enlace existente de Jquery Mobile.
+1 para el dibujo bastante :) –
no puede hacerlo sin http://www.asciiflow.com/ – lulalala
¿Por qué no separar cada pseudo-página en diferentes documentos HTML? ¿Qué estás ganando al crear esta compleja lógica? Si se trata de tiempo de carga percibido, entonces sugiero usar documentos separados y usar el atributo 'data-prefetch' para evitar un retraso de navegación no deseado. – Jasper