JeuWeb - Crée ton jeu par navigateur
jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : jScrollPane ne fonctionne pas avec un contenu variable via AJAX? (/showthread.php?tid=5233)

Pages : 1 2 3 4


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Sephi-Chan - 09-02-2011

Effectivement.

Argorate, ton problème est toujours d'actualité avec la version 2 ?
Si oui, il suffit de relancer apijSP.reinitialise(); quand tu ajoutes du contenu : http://jsfiddle.net/A287Z/.

De plus, pourquoi n'utilises-tu pas les outils que jQuery met à ta disposition (cf. ton utilisation de getElementById et innerHTML) ?


Sephi-Chan


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Argorate - 09-02-2011

En fait le problème est qu'il est obligatoire d'utiliser apijSP.getContentPane().append() pour ajouter du contenu sinon cela ne semble plus se réactualiser correctement, ce qui est assez contraignant car ma fonction générique AJAX ne fonctionne pas avec "apijSP.getContentPane().append()" évidemment.


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Sephi-Chan - 09-02-2011

Comment ça ta fonction générique Ajax ? Peux-tu nous montrer ça ?
J'ai l'impression que tu fais des choses bizarres.


Sephi-Chan


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Argorate - 09-02-2011

Y a rien de "bizarre" avec AJAX, tu indiques la page a demander au serveur et le conteneur où afficher la sortie.


function ajax(nom_page, nom_div, option_concatenation)
{
var xhr_object = false;

if(window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); //IE
else if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest(); //FIREFOX
else alert('Navigateur non reconnu');

xhr_object.open('GET', nom_page, true);
xhr_object.send(null);

xhr_object.onreadystatechange = function()
{
if(xhr_object.readyState == 4)
{
if(option_concatenation == 1) ELT(nom_div).innerHTML = xhr_object.responseText + ELT(nom_div).innerHTML;
else ELT(nom_div).innerHTML = xhr_object.responseText;
}
}
}

Oui, oui, je sais tu n'aimes pas les innerHTML, mais sinon ça marche. Mais du coup ça m'embête pour le cas présent tu comprends?


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Sephi-Chan - 09-02-2011

Ah ok, tu n'utilises pas jQuery non plus pour Ajax… Mais finalement, pourquoi est-ce que tu inclues jQuery ?


Sephi-Chan


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Argorate - 09-02-2011

pour plein de petite fonctionnalités a droite et a gauche, bien pratique.

bref, pour le problème actuel?


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Sephi-Chan - 09-02-2011

Putain… C'est bien pire que je ne l'imaginais…

Comment se passe la récupération des nouveaux messages dans ton chat ? Tu vas chercher toutes les N secondes TOUS les messages ou seulement ceux qui sont apparus depuis la dernière récupération ?


Sephi-Chan


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Argorate - 09-02-2011

Seulement ceux rajouter depuis la derniere récup...
On va voir l'ajax en jquery la semaine prochaine, je verrais s'il y a un quelconque avantage, a moins que tu veuilles me le dire maintenant? Smile

Et j'aimerais bien qu'on recadre le sujet sur le problème avant de partir sur autre chose plz.


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Sephi-Chan - 09-02-2011

Oui t'inquiète, on va rester sur ce sujet.

Bon, lors de l'appel Ajax qui va chercher les nouveaux messages, quel paramètre est-ce que tu envoies pour dire à PHP de ne sortir que les messages postés après tel moment (ça me permettra de te faire un exemple proche de ce que tu as).


Sephi-Chan


RE: jScrollPane ne fonctionne pas avec un contenu variable via AJAX? - Holy - 09-02-2011

(09-02-2011, 06:18 PM)Argorate a écrit : Seulement ceux rajouter depuis la derniere récup...
On va voir l'ajax en jquery la semaine prochaine, je verrais s'il y a un quelconque avantage, a moins que tu veuilles me le dire maintenant? Smile
Je me permets de répondre avant que Séphi le fasse, je crains la réponse cinglante :ninga:

Le gros avantage de Jquery est de simplifier une série de procédure (notamment AJAX) qui améliore considérablement la maintenabilité du code.

Concernant l'AJAX, voilà ce que ta fonction donnerait en jquery :
$.get("page à appeler", tableau de données à transmettre,
function(data){
// Ici ta fonction de callback une fois la requête finie
});

Il existe trois méthodes générales pour les requêtes ajax (on pourrait ajouter deux trois autres méthodes liées au format de sortie) : get, post et ajax.

Là où Séphi a raison, c'est que JQuery est très complet et il vaut mieux éviter d'avoir un code hybride pour des raisons de compatibilité et de casse-tête programmatique ^^
Il vaut mieux que tu t'investisses à fond dans JQuery, il existe beaucoup de tutoriaux et vu que c'est assez simple à comprendre, ça va très vite pour apprendre, sans compter que la doc est bien fournie, même en français ^^ Mais tu verras dans la suite de ta formation (si j'ai bien compris) que c'est vraiment un outil très riche et complet Big Grin

Edition : Désolé, j'ai été grilled =p