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

JavaScript Discussion :

Erreur dans le script : clic et sélection de texte


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2016
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2016
    Messages : 5
    Par défaut Erreur dans le script : clic et sélection de texte
    Bonsoir à tous,
    Je viens demander vos lumières sur un problème que je n'arrive pas à résoudre.
    Le souci est que le script ne réagit pas comme je le voudrais, lorsque je sélectionne un projet (au centre), l'image correspondante apparait bien, mais pas le bon texte descriptif (voire même le texte descriptif change en appuyant plusieurs fois sur le projet).


    Si quelqu'un pouvait m'éclairer, d'avance mille mercis !



    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    // JavaScript Document
     
    	// On ajoute un curseur sur les images si il y a un texte de présentation
    	$('.projet .image').each(function()
    		{
    			var ec  = $(this);
    			var children = ec.children('.texte-presentation');
    			if( children.length > 0 )
    				{
    					ec.css('cursor','pointer');	
    				}
    		});
    	// Clic pour afficher les textes de présentation
    	$('.projet .image').click(function( e )
    		{
    			e.stopPropagation();
    			var ec = $(this);
    			var texte = $('.texte-presentation',ec).fadeIn();
    			$('.fermer',ec).click(function( e )
    				{
    					e.stopPropagation();
    					texte.fadeOut();
    				});
    		});
    	// Fonction pour scroll vers le haut
    	$('.gotoTop').click(function( e )
    		{
    			e.stopPropagation();
    			$('body,html #footbar').animate({ scrollTop : 0 },400);
    		});
     
    	$('.gotoTop').click(function( e )
    		{
    			e.stopPropagation();
    			$('#col-right').animate({ scrollTop : 0 },400);
    		});
     
    	// Fonction pour afficher la barre de contact
    	$('.showContact').click(function( e )
    		{
    			e.stopPropagation();
    			var ec = $(this);
    			var cible = $('#contact-bar');
    			console.log( cible.css('left') );
    			if( parseFloat( cible.css('left').replace('px','') ) < 0 )
    				{
    					cible.animate({ 'left' : '0%' },200);
    				}
    					else
    				{
    					cible.animate({ 'left' : '-100%' },200);
    				}
    		});
    	// Fonction pour afficher la barre de navigation
    	//$('.showNav').click(function( e )
    	//	{
    	//		e.stopPropagation();
    	//		var ec = $(this);
    	//		var cible = $('#nav-bar');
    	//		console.log( cible.css('left') );
    	//		if( parseFloat( cible.css('left').replace('px','') ) < 0 )
    	//			{
    	//				cible.animate({ 'left' : '0%' },200);
    	//			}
    	//				else
    	//			{
    	//				cible.animate({ 'left' : '-100%' },200);
    	//			}
    	//	});
     
     
        /*$('p#AU').click(function(){
         $('#footbar').animate({scrollTop:$("p#txt-AU").offset().top}, 750);
         return false;
       });*/
     
     
       /* click pour aller de lien en lien */
     
      /* quand je clique sur le lien */
     
        $('a p#AU').click(function(){
         $('body').animate({scrollTop:$("#projet-AU").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-AU").offset().top}, 750);
         return false;
       });
     
        $('a p#TENSION').click(function(){
         $('body').animate({scrollTop:$("#projet-TEST-TENSION").offset().top}, 750);
         return false;
       });
     
        $('a p#SPORT').click(function(){
         $('body').animate({scrollTop:$("#projet-SPORT").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-SPORT").offset().top}, 750);
         return false;
       });
     
        $('a p#SPORT-PLOMB').click(function(){
         $('body').animate({scrollTop:$("#projet-PLOMB").offset().top}, 750);
         return false;
       });
     
        $('a p#SPORT-ELASTIQUE').click(function(){
         $('body').animate({scrollTop:$("#projet-ELASTIQUE").offset().top}, 750);
         return false;
       });
     
        $('a p#SPORT-TENSION').click(function(){
         $('body').animate({scrollTop:$("#projet-TENSION").offset().top}, 750);
         return false;
       });
     
        $('a p#SPORT-COORDINATION').click(function(){
         $('body').animate({scrollTop:$("#projet-COORDINATION").offset().top}, 750);
         return false;
       });
     
        $('a p#MEMOIRE').click(function(){
         $('body').animate({scrollTop:$("#projet-MEMOIRE").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-MEMOIRE").offset().top}, 750);
         return false;
       });
     
     
       $('a p#SF').click(function(){
         $('body').animate({scrollTop:$("#projet-SF").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-SF").offset().top}, 750);
         return false;
       });
     
        $('a p#LIII').click(function(){
         $('body').animate({scrollTop:$("#projet-LIII").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-LIII").offset().top}, 750);
         return false;
       });
     
        $('a p#BL').click(function(){
         $('body').animate({scrollTop:$("#projet-BL").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-BL").offset().top}, 750);
         return false;
       });
     
       $('a p#HH').click(function(){
         $('body').animate({scrollTop:$("#projet-HH").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-HH").offset().top}, 750);
         return false;
       });
     
       $('a p#WST').click(function(){
         $('body').animate({scrollTop:$("#projet-WST").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-WST").offset().top}, 750);
         return false;
       });
     
         $('a p#DC').click(function(){
         $('body').animate({scrollTop:$("#projet-DC").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-DC").offset().top}, 750);
         return false;
       });
     
         $('a p#GG').click(function(){
         $('body').animate({scrollTop:$("#projet-GG").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-GG").offset().top}, 750);
         return false;
       });
     
     
       $('a p#CP').click(function(){
         $('body').animate({scrollTop:$("#projet-CP").offset().top}, 750);
         $('#footbar').animate({scrollTop:$("p#txt-CP").offset().top}, 750);
         return false;
       });
     
       $('a p#AFFICHE-ESADHAR').click(function(){
         $('body').animate({scrollTop:$("#projet-AFFICHE-ESADHAR").offset().top}, 750);
         return false;
       });
     
    /* fin de quand je clique sur le lien */
     
    /* quand je clique sur le texte */
     
        $('p#txt-AU').click(function(){
         $('body').animate({scrollTop:$("#projet-AU").offset().top}, 750);
         return false;
       });
     
        $('p#txt-SPORT').click(function(){
         $('body').animate({scrollTop:$("#projet-SPORT").offset().top}, 750);
         return false;
       });
     
       $('p#txt-MEMOIRE').click(function(){
         $('body').animate({scrollTop:$("#projet-MEMOIRE").offset().top}, 750);
         return false;
       });
     
        $('p#txt-SF').click(function(){
         $('body').animate({scrollTop:$("#projet-SF").offset().top}, 750);
         return false;
       });
     
     
        $('p#txt-LIII').click(function(){
         $('body').animate({scrollTop:$("#projet-LIII").offset().top}, 750);
         return false;
       });
     
       $('p#txt-BL').click(function(){
         $('body').animate({scrollTop:$("#projet-BL").offset().top}, 750);
         return false;
       });
     
       $('p#txt-HH').click(function(){
         $('body').animate({scrollTop:$("#projet-HH").offset().top}, 750);
         return false;
       });
     
        $('p#txt-WST').click(function(){
         $('body').animate({scrollTop:$("#projet-WST").offset().top}, 750);
         return false;
       });
     
        $('p#txt-DC').click(function(){
         $('body').animate({scrollTop:$("#projet-DC").offset().top}, 750);
         return false;
       });
     
     
         $('p#txt-GG').click(function(){
         $('body').animate({scrollTop:$("#projet-GG").offset().top}, 750);
         return false;
       });
     
     
        $('p#txt-CP').click(function(){
         $('body').animate({scrollTop:$("#projet-CP").offset().top}, 750);
         return false;
       });
     
    /* fin de quand je clique sur le texte */
     
     
    /* scrollbar */
     
    	clickscroll=false;
    	$('#footbar').scroll(function(){
    		if(clickscroll==true){
    			return true
    		}
     
    		f=$(this)
    		fscroll=f.scrollTop()
    		fheight=f.innerHeight()
    		cursortop=Math.round(fscroll/fheight*100)
    		$('#footbar .cursor').css('top', cursortop+'%')
    	});
     
    		$('#footbar .cursor').mousedown(function(){
    			clickscroll=true
    		});
     
    		$(window).mouseup(function(){
    			clickscroll=false
    		});
     
    		$(window).mousemove(function(e){
    			if(clickscroll==false){
    				return true
    			}
     
    		f=$(this)
    			scrollbarheight=$(window).height()
    			mousey=e.pageY
    			cursortop=Math.round(mousey/scrollbarheight*100)
    			$('#footbar .cursor').css('top', cursortop+'%')
    			fheight=f.height()
    			$('#footbar').scrollTop(mousey/scrollbarheight*fheight)
    			console.log(scrollbarheight)
    		});

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    trop de jQuery, pas assez de HTML...

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2016
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2016
    Messages : 5
    Par défaut
    Voici le code html lié
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    			<p id="txt-AU">
    				<u style="font-family:Simplon; font-size:14px;">01</u> </br>
    				Livre 1 → Abramovic, </br>
    				performances (1976-88) </br>
    				2016, édition</br>
    				21cm x 29cm, 173 pages</br>
    				</br>
    				</br>
    				Livre 2 → Ulay, </br>
    				performances (1976-88) </br>
    				2016, édition</br>
    				21cm x 29cm, 173 pages</br>
    				</br>
    				</br>
     
    			</p>
     
     
    			</div> <!-- fin class texte projet -->
    		</div> <!-- fin footbar -->
     
     
    	<!-- Include des fichiers javascripts -->
    	<script src="javascripts/jquery.js" type="text/javascript"></script>
    	<script src="javascripts/script.js" type="text/javascript"></script>
     
     
    </body>
    </html>


    J'ai essayé plusieurs commandes, et synthaxes mais je n'y arrive pas encore :/

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Trop de tout.

    Tu serais aimable de cibler les codes/scripts nécessaires et suffisants concernant ton problème.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2016
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2016
    Messages : 5
    Par défaut
    Oui excusez moi, ça sera plus simple :

    Le lien sur lequel on clic :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <div id="col-right">
     
    			<a href="#" id="AU"><p>
    			01
    			&nbsp; Abramovic-Ulay, </br>
    			<span class="marge">performances </br></span>
    			<span class="marge">(1976-88) </br></span>
    			<span class="marge">2016, édition </br></span>
    			<span class="marge">21cm x 29cm, 173 pages </br></span>
    			</p> </a>

    La photo qui s'affiche bien après le clic :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <div id="col-left">
     
    			<div class="projet" id="projet-AU">
    				<div class="texte"> <p> 01	</p></div>
    					<div class="image"> <img src="images/AU/AU_01.jpg"> </div>
    					<div class="image"> <img src="images/AU/AU_05.jpg"> </div>
    					<div class="image"> <img src="images/AU/AU_02.jpg"> </div>
    					<div class="image"> <img src="images/AU/AU_03.jpg"> </div>
    					<div class="image"> <img src="images/AU/AU_04.jpg"> </div>
    					<div class="image"> <img src="images/AU/AU_06.jpg"> </div>
    					<div class="image"> <img src="images/AU/AU_07.jpg"> </div>
    					<div class="image"> <img src="images/AU/AU_08.jpg"> </div>
    					<div class="image"> <img src="images/AU/AU_09.jpg"> </div>
    			</div>

    Le script js :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $("a p#AU").click(function(){
         $("body").animate({scrollTop:$("#projet-AU").offset().top}, 750);
         $("#footbar").animate({scrollTo:$("#txt-AU").offset().top}, 750);
         return false;
       });
    Le clic renvoi bien à la bonne photo mais pas au bon texte. En fait le clic n'envoi pas du tout au texte, ou à un morceau de façon aléatoire et du coup pas le bon

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    je ne comprends pas le HTML :
    où est chaque texte associé à chaque image ?

    Ce n'est pas clair dans le HTML.
    Donc, pas évident à trouver via jQuery.

    En HTML5, si on imagine une image et sa légende :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <figure>
      <img src="........." />
      <figcaption>
          ici la légende/texte associée à l image 
      </figcaption>
    </figure>
    Afficher/masquer la légende :
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    figure figcaption { display:none; }
    figure:hover figcaption { display:block; }

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2016
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2016
    Messages : 5
    Par défaut
    Voici le texte associé au morceau que j'ai choisi :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <p id="txt-AU">
    				<u style="font-family:Simplon; font-size:14px;">01</u> </br>
    				Livre 1 → Abramovic, </br>
    				performances (1976-88) </br>
    				2016, édition</br>
    				21cm x 29cm, 173 pages</br>
    				</br>
    				</br>
    				Livre 2 → Ulay, </br>
    				performances (1976-88) </br>
    				2016, édition</br>
    				21cm x 29cm, 173 pages</br>
    				</br>
    				</br>
    				En travaillant le livre d’artiste, </br>je soutiens une logique cohérente qui mène l’art de performer le livre à l’envie d’éditer </br>la performance. De façon naturelle, c’est la question suivante qui traverse ma pratique : comment éditer la Performance, cet art </br>du vivant, du mouvement et de l’éphémère ?
    				</br>
    				</br>
    				C’est à travers le livre consacré </br>aux performances du couple Abramovic </br>& Ulay (1976-88) composé de deux livres – l’un noir qui regroupe uniquement les images, l’autre blanc qui réunit les légendes de celles-ci – que je propose une première réponse possible.
    				</br>
    				</br>
    				Le principe de cette expérience consiste </br>à intercaler une page-légende à une page-image dans le but de rejouer l’expérience </br>du temps. Répondant au phénomène </br>de l’arc-boutement, une fois imbriqué </br>d’un dans l’autre les deux livres ne peuvent plus être dissociés quelle que soit la force exercée dessus. Ce livre performatif retrace la traversée emblématique du couple qui </br>ont exploré à travers le prisme du corps, l’ensemble des paramètres qui animent </br>la dynamique relationnelle et dont chacune de leurs performances redéfinit l’alter-ego.
    			</p>


    Pour mieux illustrer le problème voici l'ébauche du site

    Quand on sélectionne un projet au centre, l'image correspondante apparait bien mais pas le texte

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2016
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2016
    Messages : 5
    Par défaut
    Je vais tester en html5

  9. #9
    Invité
    Invité(e)
    Par défaut
    (j'ai vu ton site)

    Au lieu d'utiliser id="...." (un id DOIT être unique) :
    => mets le même data-id="..." pour les 3.

    Ca simplifie : tu affiches l'image et le texte ayant le même data-id que le titre cliqué.

Discussions similaires

  1. [Sql] erreur dans un script
    Par fyren` dans le forum Oracle
    Réponses: 9
    Dernier message: 02/02/2006, 23h44
  2. erreur dans un script
    Par rib dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/12/2005, 16h42
  3. erreur dans mon script
    Par Swata dans le forum Langage
    Réponses: 4
    Dernier message: 21/09/2005, 00h02
  4. [langage]erreur dans mon script
    Par Fabouney dans le forum Langage
    Réponses: 11
    Dernier message: 30/06/2005, 14h58
  5. [Apache] Erreur dans mes scripts CGI
    Par GLDavid dans le forum Apache
    Réponses: 2
    Dernier message: 28/08/2004, 06h14

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