Outils pour utilisateurs

Outils du site


pipo

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
pipo [20/08/2022 11:02] – créée cyrillepipo [20/08/2022 17:09] (Version actuelle) – typo cyrille
Ligne 1: Ligne 1:
-====== Pipo ======+====== C'est c'là, oui... que du pipo ! ====== 
 + 
 +<WRAP center round box 95%> 
 +----
  
 <html> <html>
 + <select id="pipos">
 + </select>
 + <button id="pipote">Pipote !</button>
 + <div>
 + <p id="pipoTitle"></p>
 + <p id="pipoTexte"></p>
 + </div>
  
 <script> <script>
-alert('hello');+ "use strict"; 
 + /* 
 + https://www.evermade.fi/story/replacing-jquery-native-javascript-projects/ 
 + */ 
 + if ( 
 + document.readyState === "complete" || 
 + (document.readyState !== "loading" && !document.documentElement.doScroll) 
 + ) { 
 + pipoInit(); 
 + } else { 
 + document.addEventListener("DOMContentLoaded", () => pipoInit()); 
 +
 + 
 + var pipos ; 
 + 
 + function pipoInit( loaded ) { 
 + 
 + if( ! loaded ) 
 +
 + const req = new XMLHttpRequest(); 
 + req.addEventListener('load', (a=> { 
 + pipos = JSON.parse( req.responseText ); 
 + pipoInit(true); 
 + } ); 
 + req.open('GET', 'https://cyrille.giquello.fr/pipo/pipos?do=export_raw'); 
 + req.send(); 
 +
 + 
 + var $pipos = document.getElementById('pipos'); 
 + var s ; 
 + 
 + s = '<option value="">au hasard</option>'; 
 + Object.keys(pipos).forEach(item => { 
 + s += '<option value="' + item + '">' + item + '</option>'; 
 + }); 
 + $pipos.innerHTML = s ; 
 + 
 + document.getElementById('pipote').addEventListener('click', function () { 
 + s = pipote( $pipos.options[$pipos.selectedIndex].value ); 
 + document.getElementById('pipoTexte').innerHTML = s ; 
 + }); 
 + 
 + s = pipote(); 
 + document.getElementById('pipoTexte').innerHTML = s ; 
 + 
 + function pipote(pipoName) { 
 + 
 + var pipo = ''; 
 + if (!pipoName) { 
 + var names = Object.keys(pipos); 
 + pipoName = names[Math.floor(Math.random() * names.length)]; 
 +
 + document.getElementById('pipoTitle').innerHTML = pipoName + ' :' ; 
 + 
 + var parts = []; 
 + pipos[pipoName].forEach(items => 
 + parts.push(items[Math.floor(Math.random() * items.length)]) 
 + ); 
 + // Pour faire une liaison avec ou sans apostrophe "’" mettre un "#" au lieu du "de" ou "d’"
 + var aeiouy = ['a', 'e', 'i', 'o', 'u', 'y', 'h', 'é', 'è', 'ê']; 
 + var n = parts.length; 
 + parts.forEach((s, i) => { 
 + if (i == (n - 1)) { 
 + s += '.'; 
 +
 + else if (s.at(-1) == '#') { 
 + if (aeiouy.find(l => l == (parts[i + 1].at(0)).toLowerCase())) { 
 + s = s.substring(0, s.length - 1) + '’'; 
 +
 + else { 
 + s = s.substring(0, s.length - 1) + 'e '; 
 +
 +
 + else { 
 + s += ' '; 
 +
 + pipo += s; 
 + }); 
 + return pipo; 
 +
 + }; 
 </script> </script>
 </html> </html>
 +
 +----
 +</WRAP>
 +
 +Voir/éditer [[pipo/pipos|les pipos]] ou [[pipo/pipos?do=export_raw|les télécharger]].
 +
 +<WRAP center round info 60%>
 +Le pipotron est une invention originale du génial concepteur Yves -> http://bluepsi.free.fr/cybertechno/pipotron/pipotron.html (//exécutable Windows//)
 +
 +Une autre adaptation -> http://www.pipotron.free.fr/ (//page web//)
 +
 +</WRAP>
 +
pipo.1660986177.txt.gz · Dernière modification : 20/08/2022 11:02 de cyrille

Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki