cs_Kimjoa
Messages postés262Date d'inscriptionvendredi 6 mai 2005StatutMembreDernière intervention19 septembre 2014 29 déc. 2009 à 20:06
c'est un fw qui propose une abstraction commune des manipulation du dom et plus généralement du js, entre les différents navigateurs, un peu comme jquery, prototype ou mootools. Cependant j'irais pas aussi loin que des fw telle que dojo, ext ou qooxdoo, qui sont plus orienté vers des applications web que pour simplement des sites web...
perso, je pense que si il s'agit de faire une vrai appli, les html + js ne pas assé puissant, ou du moin et tant donnée que le référencement n'est plus un objectif, mieux vaut utiliser du flex ou du java....
voilà!! je viens de me remettre au développement de ce fw, une mise a jour prochainement !!
Zestyr
Messages postés466Date d'inscriptionmercredi 12 août 2009StatutMembreDernière intervention17 octobre 2011 24 déc. 2009 à 14:19
Non, c'est un objet que j'ai programmé.
Enfait je crois que j'ai pas bien compris les l'utilité de ton fw
cs_Kimjoa
Messages postés262Date d'inscriptionvendredi 6 mai 2005StatutMembreDernière intervention19 septembre 2014 24 déc. 2009 à 13:24
salut , heu j'ai pas bien compris en faite? tu utilises UID?
Zestyr
Messages postés466Date d'inscriptionmercredi 12 août 2009StatutMembreDernière intervention17 octobre 2011 24 déc. 2009 à 11:43
Slt,
Je suis entrain de créer un objet de gestion de pseudo fenetres:
Pw. J'ai fini la structure: j'ai plus qu'a rajouter des méthodes hérité par les objet enfants.
Structure:
var maFenetre = new Pw(100,50,"mon titre");
var handle_f = maFenetre.handle.all;
var barre_de_deplacement = maFenetre.move;
var handle_bdp = barre_de_deplacement.handle.all;
var titre = barre_de_deplacement.handle.title;
var contenu = maFenetre.cont;
var handle_contenu = contenu.handle.all;
cs_Kimjoa
Messages postés262Date d'inscriptionvendredi 6 mai 2005StatutMembreDernière intervention19 septembre 2014 15 déc. 2009 à 13:04
un site réservé a ie ? j'en connais pas, mais doit en avoir pas mal en intranet. Sinon pour une librairie cross browser, c'est pas logique de faire un site avec, juste pour ie ... Mais si t'as un exemple !!
Sinon y'a chrome frame , qui permet de faire tourner webkit dans ie, mais il y a une procédure spéciale que j'ai pas encore implémenté.. peux-être aussi IETab, mais là c'est tros spécifique pour que j'en tienne compte.
Sinon il reste les navigateurs de téléphone portable , mais là, j'ai pas de portable avec navigateur :) , j'arrive pas à trouver leur équivalent pc, et pour le moment la librairie est beaucoup tros lourde ...
jdmcreator
Messages postés647Date d'inscriptionsamedi 30 décembre 2000StatutMembreDernière intervention20 juillet 20127 15 déc. 2009 à 00:37
En fait, l'userAgent n'est pas modifié par le développeur mais par le navigateur lui-même. On utilise de moins en moins userAgent puisqu'il peut maintenant offert dans plusieurs navigateurs de le modifier, ce qui permet, par exemple, d'aller sur un site réservé à IE... je ne sais pas trop si je suis clair ^^
cs_Kimjoa
Messages postés262Date d'inscriptionvendredi 6 mai 2005StatutMembreDernière intervention19 septembre 2014 14 déc. 2009 à 13:02
salut jdmcreator!
J'ai déjà entendue parler de se problème concernant le userAgent.
Pour moi ce n'en n'est pas vraiment un, étant donnée que c'est une variable (d'ailleurs ca devrait être une constante) native, le développeur ne devrait surtout pas y toucher. De plus pour les versions j'utilise navigator.appVersion qui pose le même probleme.
Même si le développeur change cette variable (kel intérêt ?), si UID est chargé avant, ca devrait pas poser de problème.
Je reste donc sur cette technique, à moin que tu me pondes un truc avec la détection des navigateurs et leurs versions....;)
Le code est ouvert, sur tu propose qu'elle que chose , j'y inclurait ton nom bien sur :)
Sinon tu peux le voire dans le code j'essaye de réduire l'utilisation des variables du browser, en utilisant des tests conditionnelle sur l'existence d'une fonction...Mais parfois c'est impossible, comme pour le domReady, ou les offsets.
a++
jdmcreator
Messages postés647Date d'inscriptionsamedi 30 décembre 2000StatutMembreDernière intervention20 juillet 20127 13 déc. 2009 à 20:55
Je pense avoir trouver une manière rapide pour Firefox ^^
for (propriete in window.navigator) {
if(propriete=="securityPolicy")
{return true;break;}
return false;
}
On pourrait aussi tester des tas de petites fonctions qui n'existe (il semble) que sur Firefox comme GeckoActiveXObject, XPCNativeWrapper, XPCSafeJSObjectWrapper
Mais selon mes recherches, GeckoActiveXObject existe aussi sur netscape, c'est donc possible qu'il existe sur d'autre navigateur utilisant Gecko, il n'existe toutefois pas sur Maxthon
XPCSafeJSObjectWrapper n'existe que sur Firefox 3, donc à proscrire
Je continue de regarder, je trouve cela très interessant
jdmcreator
Messages postés647Date d'inscriptionsamedi 30 décembre 2000StatutMembreDernière intervention20 juillet 20127 13 déc. 2009 à 20:33
Hmmm... un autre commentaire
Je n'aime pas trop de manière de trouver le navigateur. Il suffit qu'on change le userAgent pour que sa trompe... Quelques trucs :
IE : il suffit de tester document.all
Safari : que navigator.vendor contienne Apple
Chrome : tester window.google
Firefox : À l'exception d'un script assez volumineux que j'avais écrit, il n'y a pas de façon simple d'en être sûr. Si tu veux, je peux chercher dans mes dossiers ce script
Opéra : window.opera ^^
Konqueror : que navigator.vendor contienne KDE
Sinon, pour le moment je n'ai pas fait de teste, il y a donc beaucoup de bug....
Je commence le débogage une fois que le module Animation sera fait. Ensuite la doc....
Si tu veux , je peux inclure ton nom dans la source ;) ?
a++
jdmcreator
Messages postés647Date d'inscriptionsamedi 30 décembre 2000StatutMembreDernière intervention20 juillet 20127 12 déc. 2009 à 15:16
Je ne sais pas, mais unescapeHTML pourrait peut-être se faire d'une autre façon, qui selon moi éviterait les exceptions (mm si je n'en ai pas encore trouvé ^^)
unescapeHTML : function(){
var el = document.createElement('div'), ret;
try{
el.innerText=this;
}
catch(e)
{
el.textContent=this;
}
ret = el.innerHTML;
el = null;
return ret;
},`
Ce n'est qu'une proposition et je n'ai pas testé, mais ça devrait fonctionnner. Je continue à regarder ;)
29 déc. 2009 à 20:06
perso, je pense que si il s'agit de faire une vrai appli, les html + js ne pas assé puissant, ou du moin et tant donnée que le référencement n'est plus un objectif, mieux vaut utiliser du flex ou du java....
voilà!! je viens de me remettre au développement de ce fw, une mise a jour prochainement !!
24 déc. 2009 à 14:19
Enfait je crois que j'ai pas bien compris les l'utilité de ton fw
24 déc. 2009 à 13:24
24 déc. 2009 à 11:43
Je suis entrain de créer un objet de gestion de pseudo fenetres:
Pw. J'ai fini la structure: j'ai plus qu'a rajouter des méthodes hérité par les objet enfants.
Structure:
var maFenetre = new Pw(100,50,"mon titre");
var handle_f = maFenetre.handle.all;
var barre_de_deplacement = maFenetre.move;
var handle_bdp = barre_de_deplacement.handle.all;
var titre = barre_de_deplacement.handle.title;
var contenu = maFenetre.cont;
var handle_contenu = contenu.handle.all;
15 déc. 2009 à 13:04
Sinon y'a chrome frame , qui permet de faire tourner webkit dans ie, mais il y a une procédure spéciale que j'ai pas encore implémenté.. peux-être aussi IETab, mais là c'est tros spécifique pour que j'en tienne compte.
Sinon il reste les navigateurs de téléphone portable , mais là, j'ai pas de portable avec navigateur :) , j'arrive pas à trouver leur équivalent pc, et pour le moment la librairie est beaucoup tros lourde ...
15 déc. 2009 à 00:37
14 déc. 2009 à 13:02
J'ai déjà entendue parler de se problème concernant le userAgent.
Pour moi ce n'en n'est pas vraiment un, étant donnée que c'est une variable (d'ailleurs ca devrait être une constante) native, le développeur ne devrait surtout pas y toucher. De plus pour les versions j'utilise navigator.appVersion qui pose le même probleme.
Même si le développeur change cette variable (kel intérêt ?), si UID est chargé avant, ca devrait pas poser de problème.
Je reste donc sur cette technique, à moin que tu me pondes un truc avec la détection des navigateurs et leurs versions....;)
Le code est ouvert, sur tu propose qu'elle que chose , j'y inclurait ton nom bien sur :)
Sinon tu peux le voire dans le code j'essaye de réduire l'utilisation des variables du browser, en utilisant des tests conditionnelle sur l'existence d'une fonction...Mais parfois c'est impossible, comme pour le domReady, ou les offsets.
a++
13 déc. 2009 à 20:55
for (propriete in window.navigator) {
if(propriete=="securityPolicy")
{return true;break;}
return false;
}
On pourrait aussi tester des tas de petites fonctions qui n'existe (il semble) que sur Firefox comme GeckoActiveXObject, XPCNativeWrapper, XPCSafeJSObjectWrapper
Mais selon mes recherches, GeckoActiveXObject existe aussi sur netscape, c'est donc possible qu'il existe sur d'autre navigateur utilisant Gecko, il n'existe toutefois pas sur Maxthon
XPCSafeJSObjectWrapper n'existe que sur Firefox 3, donc à proscrire
Mais XPCNativeWrapper pourrait peut-être fonctionner (https://developer.mozilla.org/En/XPConnect_wrappers#XPCWrappedNative)
Je continue de regarder, je trouve cela très interessant
13 déc. 2009 à 20:33
Je n'aime pas trop de manière de trouver le navigateur. Il suffit qu'on change le userAgent pour que sa trompe... Quelques trucs :
IE : il suffit de tester document.all
Safari : que navigator.vendor contienne Apple
Chrome : tester window.google
Firefox : À l'exception d'un script assez volumineux que j'avais écrit, il n'y a pas de façon simple d'en être sûr. Si tu veux, je peux chercher dans mes dossiers ce script
Opéra : window.opera ^^
Konqueror : que navigator.vendor contienne KDE
Petit lien que j'ai trouvé qui reprend certaines de mes techniques : http://www.quirksmode.org/js/detect.html
12 déc. 2009 à 16:04
12 déc. 2009 à 16:02
pour éviter les exception on peux en tester l'existence de la méthode
if(el.innerText)...
else if(el.textContent)...
else ...
je vais inclure la fonction dans le code.
Sinon, pour le moment je n'ai pas fait de teste, il y a donc beaucoup de bug....
Je commence le débogage une fois que le module Animation sera fait. Ensuite la doc....
Si tu veux , je peux inclure ton nom dans la source ;) ?
a++
12 déc. 2009 à 15:16
unescapeHTML : function(){
var el = document.createElement('div'), ret;
try{
el.innerText=this;
}
catch(e)
{
el.textContent=this;
}
ret = el.innerHTML;
el = null;
return ret;
},`
Ce n'est qu'une proposition et je n'ai pas testé, mais ça devrait fonctionnner. Je continue à regarder ;)