IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez Discussion :

[SRC] marquee en javascript


Sujet :

Contribuez

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Points : 491
    Points
    491
    Par défaut [SRC] marquee en javascript
    système de défilement automatique, un peu comme marquee, compatible avec prototype.js .
    La balise marquee ne respect pas les standards et chrome ne la prend pas en charge...

    liste des arguments possibles :
    - id ou élément conteneur
    - id ou élément contenue
    - vitesse initiale
    - direction du déplacement
    - vitesse du scrolling , lors d'un mouse mouve au dessus de l'élément

    testé sous ie8 , ff3 et chrome.
    Fichiers attachés Fichiers attachés
    • Type de fichier : zip cs.zip (4,1 Ko, 211 affichages)

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    tiens salut kim de retour parmi nous ;-)
    bon une fois n'est pas coutume j'attaque

    code sympa utile, et bien pensé !
    j'adore la méthode de permettant de binder tes évènements ( tu ne bosserais pas en .net ou en java ???? )

    la méthode extend ,me rappel vaguement un sujet de superclass

    juste quelque question pourquoi ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(this.boxScroll)this.boxDim+=17;
    le 17 ??? c'est arbitraire ??

    ensuite un peu plus loin la j'ai été chagriné de voir un setInterval tout seul :'( non assigné ( re :'( ) fuite mémoire en perspective et si tu souhaites le kill tu fait comment ???

    chtite dernier truc, dans ton fichier de prototype tu codes en objet format json mais plus dans ton marquee

    voila mon attaque est terminée , très bon code !

    ps : j'aurais bien vu une amélioration de l'algo de rotation
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Points : 491
    Points
    491
    Par défaut re
    salut , le_chomeur , mais je vous aient jamais vraiment quitté , chui timide

    Concernant la méthode de binding des événements, c'est tiré de la librairie prototype ...

    concernant ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if(this.boxScroll)this.boxDim+=17;
    En faite je mets un overflow à hidden , mais comme si le scroll été visible le conteneur est tronqué, si le contenue a une dimension supèrieur, donc je recalcule le conteneur en rajoutant la largeur du scrool, vais refaire des testes, quand même pour être sure à 100%...

    Concernant le setInterval , j'ai jamais fait très attention au fuite de mémoire , mais tu as complètement raison , faudrait le détruire lorsque l'on quitte l'application , comme les événement d'ailleurs, je devrais passé par une fonction intermédiaire et tenir des registres , pour tout supprimer au unload.

    Enfin pour la structure du code, là plus part des fonctions sont des closures , car unique pour chaque instance , surtout les événements binder , et n'ayant pas de méthode publique (un marquee n'a pas de méthode publique ...même si on peux en rajouté) ,presque tout le code se trouve dans le constructeur.

    voilà, pour info , ce script n'est pas compatible ie7 , je reposte dans la journée .

    a++

  4. #4
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    c'est bien ce que je pensais pour les 17,

    pour les évènements, détruit les au fur et a mesure de leur fin d'utilisation , de même pour les fonction lié aux objets

    une fonction de purge fera l'affaire ( il y en a une qui traine sur le forum )
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Points : 491
    Points
    491
    Par défaut
    j'avais déjà été voire la résolution proposé pour les fuites de mémoire de ton calendrier, c'est efficace, mais y'aurais sans doute un moyen plus générique d'y arriver, notamment avec des registres...., je vais adopter t'as solutions, j'ai pas le temps de faire plus ....

    Sinon pour le 17 , le conteneur n'est pas tronqué, c'est la hauteur que me donne la fonction clientWidth qui est erroné ...

    bye

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Points : 491
    Points
    491
    Par défaut
    voilà, j'ai modifier la source ....correction du bug ie7 , + ajout de la purge des évènements et de l'intervalle , lors de la fermeture de la fenêtre.

  7. #7
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    et avec un offsetWidth ??
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Points : 491
    Points
    491
    Par défaut
    c'est plus facile en faite avec un clientWidth qui calcule la largeur sans les bordures,contrairement à offsetWidth ... en faite me suis un peu renseigné , et la valeur retourné est toujours calculé sans les scrolls si ils existent

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Points : 491
    Points
    491
    Par défaut
    je viens de reposter le code, y avais un beug dans le prototype , et aussi lorsque le contenue était plus petit que le conteneur ...

    !!! si vous voulais faire marquee horizontale, placé toujours le contenue dans un span , et aussi avec un style white-space : nowrap;

Discussions similaires

  1. Marquee et javascript sous IE
    Par Larger dans le forum ASP.NET
    Réponses: 5
    Dernier message: 18/03/2009, 11h26
  2. [JavaScript] [SRC] Métaprogrammation en javascript
    Par gwyohm dans le forum Contribuez
    Réponses: 3
    Dernier message: 05/12/2008, 12h27
  3. Equivalent de marquee en javascript
    Par mikadannagrram dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/06/2007, 20h54
  4. balise marquee, changement de sens avec javascript
    Par zubaran dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 08/04/2006, 09h54
  5. javascript dans le src de la balise script, est-ce possible?
    Par dam_moreyllo dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 13/01/2006, 17h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo