Flash et problèmes de compatibilité !

On pourrait penser qu’en Flash, les problèmes de compatibilité entre navigateurs et systèmes d’exploitations n’existent pas ! Et bien non, c’est une légende urbaine !

Aujourd’hui, j’ai essayé d’ajouter deux bêtes fonctionnalités au Twitter3D de Michaël. Vous pouvez admirer le résultat ici (le seul fichier qui change par rapport au code de Michaël est Twitter3D.as). Les fonctionnalités en question sont :

* Afficher un input pour pouvoir choisir le compte dont on souhaite afficher les tweets.
* Pouvoir naviguer avec la roulette de la souris.

Pour la première fonctionnalité, je n’ai eu aucun problème. Essayez en tapant “Vinch01” ou “michaelvillar“, ça fonctionne. Il faut juste que j’améliore l’ergonomie car cet input ressemble à une barre de loading qui ne se loade pas !

Pour la seconde fonctionnalité, en revanche, j’ai eu l’immense surprise d’apprendre que la gestion de la roulette de la souris en Flash ne fonctionne pas sur Mac ! Il a donc fallu utiliser un bon vieux hack ! L’explication du hack se trouve sur ce blog. En résumé, il faut, d’une part, importer une librairie dans le fichier Flash et d’autre part, ajouter un petit JavaScript dans le fichier HTML qui contient le SWF. C’est complètement tordu mais quand on fait aussi du XHTML, CSS et JavaScript, on est habitué à ce genre de choses. Je suis un peu déçu car je pensais que le verbe “chipoter” ne faisait pas partie du vocabulaire Flash. En même temps, c’est pas trop grave, l’important c’est qu’il existe une solution relativement robuste pour réparer tout ça…

Et de votre côté, vous connaissez d’autres problèmes de compatibilité dans Flash ? Ca pourrait m’être utile, je commence les choses sérieuses dans très peu de temps !

10 Comments

  1. Michaël's avatar Michaël says:

    Ha c’est donc ça.
    Je savais que la roulette n’étais pas supportée par le Flash player sur Mac.. mais j’avais vu des sites récents l’utiliser, je croyais le problème résolu, mais ce n’en n’est rien..
    Mais si tu es sur Windows, selon ton code, la navigation par roulette n’irait qu’en avant? Tu n’utilises pas le delta.

    Like

  2. Vinch's avatar Vinch says:

    Ah oui tiens, je n’ai pas mis en ligne la dernière version des sources. Je l’avais fait. En gros, tu checkes event.delta. S’il est positif, tu vas vers l’avant, négatif vers l’arrière.

    Like

  3. Greg's avatar Greg says:

    Y a un truc qui m’a toujours pris la tête avec les flash, c’est qu’il faut cliquer une fois dans l’anim pour que les touches du clavier deviennent actives 😉 Comme si le focus n’était pas mis par défaut sur le fichier flash embeddé dans la page.

    Like

  4. Vinch's avatar Vinch says:

    Y a peut-être (sûrement) moyen de régler ça en JavaScript. Sinon, le fichier Twitter3D.as est désormais à jour.

    Like

  5. Ced's avatar Ced says:

    @Greg: tu veux parler de ça non ? In February, 2006 Microsoft modified its Internet Explorer web browser to appear to side-step the Eolas patent. The change, first discussed in 2003], requires users to click once on an ActiveX control to “activate” it before they can use its interface.

    Like

  6. vinch's avatar Vinch says:

    Non, ça c’est la bordure grise qui apparait dans IE mais avec SWFObject, il n y a plus de problèmes

    Like

  7. Salut,

    Je me souviens il y a quelques mois déjà ne pas avoir pu entrer mon adresse email (à cause du @) dans un formulaire en flash. Il me semble que c’était sur le site de Numericable, mais pas sûr.

    (J’étais sur Mac aussi, sur PC ça marche, à croire que leur flash intégrait un keyboard map :))

    Like

  8. Marin's avatar Marin says:

    non, il faut effectivement clicker sur le flash pour que celui-ci soit actif. comme quand on est “dans” un flash (qd on a cliqué dessus), il n’y a pas moyen d’employer ses raccourcis clavier, CTRL+T etc…

    Tiens tant que tu es ds flash, tu pourrais faire un framework pour que le mousewheel resize la taille des textes… Ca aussi flash ne le fait pas par défaut…

    Like

  9. Michaël's avatar Michaël says:

    Un “bug”, mais qui est bien recensé sur Flash, c’est que le clavier est inactif lorsqu’on met Flash en plein écran. Très désagréable.

    Like

  10. Lionel's avatar Lionel says:

    Pour moi flash ca n’est que du bricolage en permanence, des petites astuces pour palier les manques du soft et du plugin. Pour les performances, le poids, les problemes de compatibilité, les bugs du language en lui même. En tant que flasheur tu y fais meme plus attention à la longue.
    Un bel exemple, un formulaire en flash avec un fond transparent peut déconner dans firefox 2 pc, je dis bien “peut” car ca n’arrive pas à tout les coups ca serait trop beau.

    Mais en fait j’ai l’impression qu’on a ca partout en informatique. Tous les développeurs sont dépendants d’autres développeurs. Du coup on en sort jamais…

    Like

Leave a Comment