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.