Partage
  • Partager sur Facebook
  • Partager sur Twitter

Limiter des smileys par page

Sujet résolu
    1 mars 2009 à 13:49:25

    Bonjour,

    J'essaye de chercher comment limiter le nombre de smileys par page comme sur le siteduzero quand on clique sur autres smilies une page s'affiche j'ai essayer de faire :

    function onloadSmilleyChange() {
    	gparent = document.getElementById('hop');
    	if(gparent) {
    		var listDiv = gparent.getElementsByTagName('div');
    		for(var i = 0; i < listDiv.length ; i++) {
    			if(listDiv[i].className == 'smiley') {
    				var zoneSmilies = listDiv[i].parentNode;
    				zoneSmilies.id = 'zone-smilies';
    				zoneSmilies.innerHTML = '';
    				if (window.XMLHttpRequest) { // Mozilla, Safari, ...
    					http_request = new XMLHttpRequest();
    				} else if (window.ActiveXObject) { // IE
    					http_request = new ActiveXObject('Microsoft.XMLHTTP');
    				}
    				
    				http_request.onreadystatechange = function() {
    					if (http_request.readyState == 4) {
    						if (http_request.status == 200) {
    							document.getElementById('zone-smilies').innerHTML = http_request.responseText;
    						}
    					}
    				};
    				
    				var page = ""+PATH_HTTP+"/smiles.html";
    				// requete avec post
    				http_request.open('GET', page, true);
    				http_request.send(null);
    			}
    		}
    	}
    }
    
    Event.observe(window, 'load', onloadSmilleyChange, false);
    
    function changePageSmilies(num) {
    	var numeroCurr = 1;
    	var page = document.getElementById('smilies-page-'+numeroCurr);
    	
    	while(page) {
    		if(numeroCurr == num) {
    			page.className = 'show-page';
    		} else {
    			page.className = 'show-not-page';
    		}
    		numeroCurr++;
    		page = document.getElementById('smilies-page-'+numeroCurr);
    	}
    }
    


    Et pour ma page smiles.html j'ai mit ceci vu que je l'appelle dans mon code javascript :


    <div id='smilies-page-1' class='show-page'>
    	<div class='smilies-page-lien'>
    		<a href='#' class='precedent' onclick='changePageSmilies(10);return false;'><span>&lt;&lt;</span></a>
    		<a href='#' class='suivant' onclick='changePageSmilies(2);return false;'><span>&gt;&gt;</span></a>
    		<div class='intitule'>Smileys <span>( 1 / 2 )</span></div>
    	</div>
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/amazing-48.png" title="" alt="" onClick="javascript:smilies(':1:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/bad_smile-48.png" title="" alt="" onClick="javascript:smilies(':2:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/beaten-48.png" title="" alt="" onClick="javascript:smilies(':3:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/big_smile-48.png" title="" alt="" onClick="javascript:smilies(':4:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/black_heart-48.png" title="" alt="" onClick="javascript:smilies(':5:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/cry-48.png" title="" alt="" onClick="javascript:smilies(':6:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/electric_shock-48.png" title="" alt="" onClick="javascript:smilies(':7:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/exciting-48.png" title="" alt="" onClick="javascript:smilies(':8:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/eyes_droped-48.png" title="" alt="" onClick="javascript:smilies(':9:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/girl-48.png" title="" alt="" onClick="javascript:smilies(':10:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/greedy-48.png" title="" alt="" onClick="javascript:smilies(':11:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/grimace-48.png" title="" alt="" onClick="javascript:smilies(':12:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/haha-48.png" title="" alt="" onClick="javascript:smilies(':13:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/horror-48.png" title="" alt="" onClick="javascript:smilies(':14:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/money-48.png" title="" alt="" onClick="javascript:smilies(':15:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/nothing-48.png" title="" alt="" onClick="javascript:smilies(':16:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/nothing_to_say-48.png" title="" alt="" onClick="javascript:smilies(':17:');return(false)" />
    	
    
    </div>
    
    <div id='smilies-page-2' class='show-not-page'>
    	<div class='smilies-page-lien'>
    		<a href='#' class='precedent' onclick='changePageSmilies(1);return false;'><span>&lt;&lt;</span></a>
    		<a href='#' class='suivant' onclick='changePageSmilies(3);return false;'><span>&gt;&gt;</span></a>
    		<div class='intitule'>Smileys <span>( 2 / 2 )</span></div>
    	</div>
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/scorn-48.png" title="" alt="" onClick="javascript:smilies(':18:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/secret_smile-48.png" title="" alt="" onClick="javascript:smilies(':19:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/shame-48.png" title="" alt="" onClick="javascript:smilies(':20:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/shocked-48.png" title="" alt="" onClick="javascript:smilies(':21:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/super_man-48.png" title="" alt="" onClick="javascript:smilies(':22:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/the_iron_man-48.png" title="" alt="" onClick="javascript:smilies(':23:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/victory-48.png" title="" alt="" onClick="javascript:smilies(':24:');return(false)" />
    	<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/what-48.png" title="" alt="" onClick="javascript:smilies(':25:');return(false)" />
    </div>
    


    Je fait donc appelle comme ceci :


    <div id="zone-smilies" class="center"><div id="smilies-page-1" class="show-page">
    	<div class="smilies-page-lien">
    		<a href="#" class="precedent" onclick="changePageSmilies();return false;"><span>&lt;&lt;</span></a>
    		<a href="#" class="suivant" onclick="changePageSmilies();return false;"><span>&gt;&gt;</span></a>
    		<div class="intitule">Smileys <span>( 1 / 5 )</span></div>
    	</div>
    
    	<div>
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/amazing-48.png" title="" alt="" onClick="javascript:smilies(':1:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/bad_smile-48.png" title="" alt="" onClick="javascript:smilies(':2:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/beaten-48.png" title="" alt="" onClick="javascript:smilies(':3:');return(false)" />
    	</div>
    
    	<div>	
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/big_smile-48.png" title="" alt="" onClick="javascript:smilies(':4:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/black_heart-48.png" title="" alt="" onClick="javascript:smilies(':5:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/cry-48.png" title="" alt="" onClick="javascript:smilies(':6:');return(false)" />
    		
    	</div>
    	
    	<div>
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/electric_shock-48.png" title="" alt="" onClick="javascript:smilies(':7:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/exciting-48.png" title="" alt="" onClick="javascript:smilies(':8:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/eyes_droped-48.png" title="" alt="" onClick="javascript:smilies(':9:');return(false)" />
    	</div>	
    
    	<div>		
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/girl-48.png" title="" alt="" onClick="javascript:smilies(':10:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/greedy-48.png" title="" alt="" onClick="javascript:smilies(':11:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/grimace-48.png" title="" alt="" onClick="javascript:smilies(':12:');return(false)" />
    	</div>
    
    	<div>		
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/haha-48.png" title="" alt="" onClick="javascript:smilies(':13:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/horror-48.png" title="" alt="" onClick="javascript:smilies(':14:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/money-48.png" title="" alt="" onClick="javascript:smilies(':15:');return(false)" />
    	</div>
    
    	<div>		
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/nothing-48.png" title="" alt="" onClick="javascript:smilies(':16:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/nothing_to_say-48.png" title="" alt="" onClick="javascript:smilies(':17:');return(false)" />
    	</div>
    
    	<div>
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/scorn-48.png" title="" alt="" onClick="javascript:smilies(':18:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/secret_smile-48.png" title="" alt="" onClick="javascript:smilies(':19:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/shame-48.png" title="" alt="" onClick="javascript:smilies(':20:');return(false)" />
    	</div>
    	
    	<div>
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/shocked-48.png" title="" alt="" onClick="javascript:smilies(':21:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/super_man-48.png" title="" alt="" onClick="javascript:smilies(':22:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/the_iron_man-48.png" title="" alt="" onClick="javascript:smilies(':23:');return(false)" />
    	</div>
    
    	<div>	
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/victory-48.png" title="" alt="" onClick="javascript:smilies(':24:');return(false)" />
    		<img src="<?php echo(ESFD_SITE_WEB); ?>icones/smileys-black/what-48.png" title="" alt="" onClick="javascript:smilies(':25:');return(false)" />
    	</div>
    	
    	</div>
    


    Je ne sais pas du tout si faut faire comme sa je débute :D merci pour votre aide
    • Partager sur Facebook
    • Partager sur Twitter
      1 mars 2009 à 14:48:23

      Bon, je crois que l'on me l'avait jamais faite celle-là. Tu nous ponds un code énorme et tu nous dis que tu ne sais pas si c'est comme ça qu'il faut faire... En clair : tu l'as testé ton code ou pas ?

      Concernant le code, je l'ai pas essayé et je ne l'ai pas lu en entier mais je peux d'ores et déjà te dire que faire appel à XMLHttpRequest seulement pour afficher 20 smilies est une bêtise, autant tous les afficher sur ta page et ensuite faire apparaître/disparaître ceux que tu souhaites.
      • Partager sur Facebook
      • Partager sur Twitter
        1 mars 2009 à 18:24:47

        Citation : Nesquik69

        Bon, je crois que l'on me l'avait jamais faite celle-là. Tu nous ponds un code énorme et tu nous dis que tu ne sais pas si c'est comme ça qu'il faut faire... En clair : tu l'as testé ton code ou pas ?

        Concernant le code, je l'ai pas essayé et je ne l'ai pas lu en entier mais je peux d'ores et déjà te dire que faire appel à XMLHttpRequest seulement pour afficher 20 smilies est une bêtise, autant tous les afficher sur ta page et ensuite faire apparaître/disparaître ceux que tu souhaites.



        Donc le code je te le pond pas puisque je l'ai trouver je m'en me rappelle plus je précise que le javascript pour moi c'est du chinois donc c'est pourquoi je me retourne vers le siteduzero qui porte bien son nom pour m'aider.

        Pour afficher les smileys je voudrait faire comme sur le siteduzero donc après si c'est pour critiquer autant rien dire merci

        Je précise que c'est le compte a un pote et non un double compte ;)
        • Partager sur Facebook
        • Partager sur Twitter
          1 mars 2009 à 18:41:51

          Si tu avais dis dès le début que tu ne savais pas comment faire alors j'aurais compris mais là forcément... Pas besoin de te vexer pour si peu hein.

          Bref, comme tu n'y connais rien je te fais le code gratuitement :

          <script type="text/javascript">
          <!--
            function $(id) {
              return document.getElementById(id);
            }
            
            function changeSmilies(actualNode, newNode) {
              $('smilies_'+ actualNode).style.display = 'none';
              $('smilies_'+ newNode).style.display = 'block';
              return false;
            }
            
            window.onload = function(){ $('smilies_2').style.display = 'none'; };
          //-->
          </script>
          


          <div id="smilies_1">
            <p>
              <a href="#" title="" onclick="return changeSmilies(1,2);">==&gt;</a><br />
              Première page
            </p>
          </div>
          
          <div id="smilies_2">
            <p>
              <a href="#" title="" onclick="return changeSmilies(2,1);">&lt;==</a><br />
              Deuxième page
            </p>
          </div>
          
          • Partager sur Facebook
          • Partager sur Twitter
            1 mars 2009 à 22:06:09

            Merci beaucoup pour ton petit code sa bien servi ;) désoler pour toute a l'heure
            • Partager sur Facebook
            • Partager sur Twitter

            Limiter des smileys par page

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown