begin process at 2012 02 14 09:00:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Problème de compatibilité

 > 

scrollLeft d'un div avec overflow : auto


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

scrollLeft d'un div avec overflow : auto

lundi 1 décembre 2008 à 12:31:46 | scrollLeft d'un div avec overflow : auto

Teclis01

Bonjour ici :)

Alors voilà j'ai un petit soucis avec les différents browser (et j'ai testé que sur 2 )

voici le html (il manque quelques balises mais rien de très méchant enfin je pense...)

<link rel="stylesheet" type="text/css" href="./style.css">
<script type="text/javascript" src="./slider.js"></script>

<body onload="slider = new Slider(); slider.init('centerSlide');">
    <div id="slider" width="300px" height="120px">
        <div id="centerSlide" style="float:left; overflow-y: hidden; overflow-x: auto; margin-left:50px; height: 120px; width:174px; white-space:nowrap;">
            <img src="./img/ange.jpg"></img><img src="./img/ange.jpg"></img><img src="./img/ange.jpg"></img><img src="./img/ange.jpg"></img><img src="./img/ange.jpg"></img>
        </div>
        <div id="left" width="63px" style="float:left; margin-left:-237px;">
                <img src="./img/left.gif" onclick="slider.scrollToLeft(30);"></img>
        </div>
        <div id="right" width="63px" style="float:left;">
            <img src="./img/right.gif" onclick="slider.scrollToRight(30);"></img>
        </div>
    </div>
</body>

Et le js slider.js

function Slider(){
   
    this.init = function(divIdToSlide){
        this.divToSlide=divIdToSlide;
        this.minLeft=0;
        this.maxRight=document.getElementById(this.divToSlide).scrollWidth;
        this.ie= document.all?true:false;
    }
   
    this.scrollToLeft = function(leftMove){
        document.getElementById(divToSlide).scrollLeft=document.getElementById(this.divToSlide).scrollLeft+leftMove;
    }

    this.scrollToRight = function(rightMove){
        document.getElementById(this.divToSlide).scrollLeft=document.getElementById(this.divToSlide).scrollLeft+rightMove;
    }

}

Sous FireFox ca fonctionne mais sous ie ça me renvoie des erreurs et rien pour debuger...
En gros il me dit que l'objet ne gere pas la propriété ou la methode.
Qqun saurait il pourquoi et comment je peux rendre ce truc compatible ie 6?

Merci

PS : le code est en debug d'ou la longueur et aucun refactorisation.

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro

lundi 1 décembre 2008 à 13:03:30 | Re : scrollLeft d'un div avec overflow : auto

Bul3

Membre Club
Réponse acceptée !

bonjour,

tu as un id="slider" , comme il n'y a pas de name, IE met un name="slider" automatiquement.
en js :    slider = new Slider();  slider.init('...
sans var ( mais bon pas sûr que cela suffirait )  IE ne sais plus à qui on s'adresse.

var toto = new Slider();  toto.init(...
ça devrait aller meiux ( sans préjuger du reste )

quand à debugger, mon foie  :
Chrome
contrôler page actuelle / Options pour développeurs
/ Console Javascript
FireFox
Outils / Console d'erreurs
et mieux : télécharger FireBug
Internet
Explorer
activer le deboggage : Outils/options Internet/Avancés
dans la liste, sous "Navigation" : décocher
o Afficher une notification de chaque erreur de script
o Désactiver le débogage de Scripts (Internet Explorer)
et mieux : télécharger le Debogger IE
voir aussi : DebugBar et Companion JS
K-Meleon
Outils / Console d'erreurs
Opera
Outils / Avancé / Console d'erreurs
Safari
Debug / Show JavaScript Console
° modifier Fichier com.apple.Safari.plist situé dans le
répertoire : Support:\Documents and Settings\utilisateur
\Application Data\Apple Computer\Safari\Preferences\
y ajouter <key>IncludeDebugMenu</key>
<true/>


Cordialement

          [mon Site] [M'écrire] Bul         

lundi 1 décembre 2008 à 13:06:18 | Re : scrollLeft d'un div avec overflow : auto

Bul3

Membre Club
Réponse acceptée !
euh... mes "remarques" sous IE7...
je n'ai plus iE6
surtout que IE8 est annoncé, même avec du retard, mais il arrive ;o)
          [mon Site] [M'écrire] Bul       

lundi 1 décembre 2008 à 16:22:35 | Re : scrollLeft d'un div avec overflow : auto

Teclis01

Encore une fois tu m'evite de m'arracher beaucoup de cheveux !

Bizarerie ie de déclarer des variables comme les name des tag html ? surtout en repiquant le name de l'id... je me demandes s'il declares qqch si je donne ni name ni id à un tag

Pour ce qui est du tableau, je t'avoue que je connaissais pas et ton tableau va être un de mes memento
En tout cas Merci !!!




Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro

lundi 1 décembre 2008 à 16:23:48 | Re : scrollLeft d'un div avec overflow : auto

Teclis01

Dernière chose ca marche avec ie6 et ie7
ie8 ? j'l'ai pas

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro

lundi 1 décembre 2008 à 16:36:04 | Re : scrollLeft d'un div avec overflow : auto

Bul3

Membre Club

si tu a un élément name="toto", toto.??? est directement accessible avec IE.
et avec id="toto" : aussi !
pas avec les autres navigateurs pour qui il faut que ce soit dans un form
  et qu'il faut appeler avec document.name_du_formulaire.toto

comme tu n'as pas mis var toto, que l'élément toto existe,
ie ne sait plus quoi faire  ( ou plutôt il fait...  sur l'élément html
   et dans ce cas ci, ça fait planter  )

          [mon Site] [M'écrireBul         



Cette discussion est classée dans : function, document, getelementbyid, scrollleft, divtoslide


Répondre à ce message

Sujets en rapport avec ce message

Ptite question sur une function js [ par destiny ] Bonjour tlm :)Voila j'ai fais une ptite function js qui me modifie la VALUE de mon input suivant la valuer d'un checkbox!function MajTexteValider() {  BOUCLE FOR [ par tonytruand ] BONSOIR,Je me prends la tête avec une boucle for imbriquée que je n'arrive pas à faire, un ptit coup de main svp.Bon là je peux créer un twisty en cli iframe dans nelle fenetre _blank [ par tonytruand ] BonjourEst ce quelqu'un pourrait me donner un petit coup de main, merci par avancej'aimerai ouvrir le contenu d'un iframe dans une nouvelle page et je ajax/xmlhttprequest [ par David_monchy ] salut à tous,je développe un chat, et j'ai un problème: j'utilise une liste de connectés qui affiche en 'temps reel' les membres connectés. Seulement, Pb firefox pour cacher des div [ par fdthierry ] Bonjour,J'ai un menu qui se créé à partir d'une table.Le principe est le suivant:Année   Mois      JourAu chargement sous IE, je ne vois que les année augmenter variable et si plus grande que variable =0 ? [ par frvfrvfrvfrv ] bonjour à tous,voilà deja mon code source.function milieucentre(){pf = ((window.innerWidth!=undefined) ? window.innerWidth : document.documentElem Passage d'un paramètre attribut [ par Heirem ] Bonjour,Considérons les petites fonctions suivante bien connues :/** coche la checkbox passée en paramètre */function cocher(lobjet){ document.getElem problèle sur l'onload [ par borgeomi ] borgeomibonjouuuuuuur !!!!! Problème lors du chargement d'une page L'affichage de la list box est déclenchée par le fait de choisir le radio bouton Passer une variable tout en ouvrant un div [ par petityo03 ] Bonjour, Cela fait 2 - 3 jours que je me bat pour essayer de passer une variable sur un lien et en même temps ouvrir un div. Je m'explique : Déjà je s JS PARENT node [ par ghighidu63 ] Bonjour, j'ai crée ce sujet car j'ai besoin d'aide pour mon script. J'ai crée un truc pour Minimiser et Fermer un truc (Cacher/Afficher) Quand il y'en


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,090 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales