TwXDesign

Projet jQueryMobile

Documentation chantier sur la construction d’un plugin squelette en jQueryMobile en vue d’un travail collaboratif.


Nécessite le plugin Cimobile.

Une redirection automatique soumise avec les périphériques :
ipad, xoom, maemo, playbook, archos, iphone, android, blackberry, Windows Phone OS 7, iris, 3g_t, windows ce, opera mobi, windows ce-smartphone, windows ce-iemobile, webos, pre\/, palm os, palm, hiptop, avantgo, plucker, xiino, blazer, elaine, et nuvifone.

▸ accessible avec le lien : monsite.fr/?cimobile=jqm et monsite.fr/spip.php?objetXX&cimobile=jqm (avec cookie cimobile session navigateur)
▸ monsite.fr/?cimobile=web pour revenir à squelettes-dist.

Attention ! on ne pourra pas naviguer entre les squelettes. On peut voire simultannément les 2 squelettes en les ouvrant sur 2 navigateurs.

L’utilisation d’un squelette entièrement en jQueryMobile présente quelques dysfonctionnements, notamment au sujet des ancres et du maintient des styles lors de chargement en ajax des formulaires.

/formulaires/login.html

Malgré :
- data-ajax="false" l.16 et 53
- [(#FORMULAIRE_LOGIN{#URL_SITE_SPIP})] dans login-dialog.html

Pas de redirection automatique vers l’accueil
Ne charge pas le changement de statut, il faut recharger la page accueil pour voir apparaitre "se déconnecter" et "espace privé"

login-dialog.html

Si [(#FORMULAIRE_LOGIN{#ENV{url}|sinon{#URL_ECRIRE{accueil}}})]
Affiche "Vous êtes enregistré.. etc"
En revanche, si on clique sur ces liens, le nouveau statut est pris en compte.

Pagination ok

▸ toutes les paginations doivent être en ajax avec inclure
▸ un js pour le maintien du css lors de la pagination / mais qlqfois ya une bug // ©christian

$(document).ready(function(){
        var JqmSpipAjaxLoad = function (){
                $('#articles_listview').listview().trigger("create");
                $('#auteurs_listview').listview().trigger("create");                 // etc
        };
        if (typeof onAjaxLoad == 'function') onAjaxLoad(JqmSpipAjaxLoad);
});

+ id="articles_listview" dans l’ul des boucles

▸ et on vire les ancres de paginations sur /modeles/pagination.html, de toute façon avec ce js, meme si le css de la pagination se maintient l’ancrage ne fonctionne pas

▸ pb sur boucles mots du même groupe (inclure/mots.html)

#URL_FORUM

virer l’ancre :
surcharger /forums/generer_url_forum avec à la racine jqm_fonctions.php

▸ 

function jqm_fonctions($id_forum, $args='', $ancre='') {
return urls_generer_url_forum_dist($id_forum, $args, '');
}

// ©denisb

▸ 

function jqm_fonctions($id_forum, $args='', $ancre='') {
 if ($id_forum = intval($id_forum)) {
   return urls_generer_url_forum_dist($id_forum, $args, '');
 }
 return '';
}

// ©denisb

tous : site HS

/formulaires/forum.html

▸ fonctionne une fois sur 2.
▸ double validation.
▸ pb de css.
▸ pb url : si sur url forum ne fonctionne pas.
▸ formulaire non rechargé à la validation du commentaire

/formulaires/ecrire_auteur.html

css jqm non maintenu à la prévisualisation

/formulaires/signature.php

ancre supprimé l.227 mais #spX persiste dans l’url donc ne charge pas la page

notes

ancrage impossible
▸ piste : http://forum.jquery.com/topic/jquery-mobile-anchor-linking

boutons admin

▸ inopérants sauf si ouverts dans autre onglet/fenetre navigateur
▸ liens objets non chargés à la navigation, actualisation obligatoire pour charger objet.

LTR vs RTL

data-ajax="false" dans de modele article_traductions pour charger le css.
en revanche nulle part ailleurs car en général les langues sont classées par rubriques à la racine. sinon il faudrait mettre du data-ajax="false" partout et plus de jquery sur les liens.

Messages