Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481

    guardate che menu a tendina!

    Se visitate il sito http://www.php.net/manual/it/ c'è in alto un campo input "search for" in cui, se digito ad es. la lettera "a" mi si apre una sorta di menu a tendina con la lista di tutte le funzioni che iniziano con la "a", e più caratteri inserisco più la ricerca si perfeziona. Ho dato uno sguardo al codice ma non riesco a capire come abbiano fatto a fare una cosa del genere, js? dhtml? boh! Mi sapete spiegare come funziona quel sistema e come si realizza?

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    3,259
    certo che anche loro...simpaticissimi a criptare codice


    Vabbè, la prima idea è questa:

    - ti fai un array con la lista di tutte le funzioni
    - quando un utente scrive qualcosa nel campo (evento onKeyUp), setacci l'array e guardi quali voci corrispondono (sai la lunghezza della stringa inserita dall'utente, controlli i primi N caratteri del nome della funzione).
    - mostri il tutto in un livello

  3. #3
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Puo' essere fatto cosi.... (solo x IE)

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>Untitled</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    var token = new Array();
    token[0] = 'aaa';
    token[1] = 'aab';
    token[2] = 'aac';
    token[3] = 'aba';
    token[4] = 'abb';
    token[5] = 'abc';
    token[6] = 'baa';
    token[7] = 'bab';
    token[8] = 'bab';
    token[9] = 'caa';
    
    function closeDiv() {
      document.getElementById('tokenList').style.display='none';
    } // function closeDiv() 
    
    function showDiv() {
      document.getElementById('tokenList').style.display='block';
    } // function showDiv()
    
    function populate() {
     showDiv();
     //
     aVal=document.getElementById('inp').value;
     if (event.keyCode != 8) {
      aVal = aVal + String.fromCharCode(event.keyCode);
     } // if (event.keyCode != 8)
     document.getElementById('tokenList').innerHTML = "";
     for (i=0;i<token.length;i++) {
      if ( aVal != null) {
       if (token[i].substr(0,aVal.length) == aVal) {
    	  document.getElementById('tokenList').innerHTML += token[i]+'
    ';
    	 } // if (token[i].substr(0,aVal.length) == aVal)
    	} else {
    	  document.getElementById('tokenList').innerHTML += token[i]+'
    ';
    	} // if ( aVal != null)
     } // for (i=0;i<token.length;i++)
     if (document.getElementById('tokenList').innerHTML == "") {
      closeDiv();
     } // if (document.getElementById('tokenList').innerHTML == "")
    } // function populate (aVal)
    
    function populate2() {
     document.getElementById('tokenList').innerHTML = "";
     for (i=0;i<token.length;i++) {
    	  document.getElementById('tokenList').innerHTML += token[i]+'
    ';
     } // for (i=0;i<token.length;i++)
    } // function populate (aVal)
    //-->
    </script>
    
    </head>
    <body onfocus="closeDiv()">
    <div id="container">
    Search for :<input id="inp" type="text" onkeypress ="populate()" 
    onfocus="showDiv()" >
    <div id="tokenList" style="display:none;position:relative;top:0;left:70;background-color:yellow;width:150px"></div>
    </div>
    
    <script language="JavaScript" type="text/javascript">
    <!--
    populate2();
    //-->
    </script>
    
    </body>
    </html>

  4. #4
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Originariamente inviato da Dennis
    certo che anche loro...simpaticissimi a criptare codice


    Vabbè, la prima idea è questa:

    - ti fai un array con la lista di tutte le funzioni
    - quando un utente scrive qualcosa nel campo (evento onKeyUp), setacci l'array e guardi quali voci corrispondono (sai la lunghezza della stringa inserita dall'utente, controlli i primi N caratteri del nome della funzione).
    - mostri il tutto in un livello
    il tutto in js?! e come hanno fatto a criptare il codice?

  5. #5
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Originariamente inviato da badaze
    Puo' essere fatto cosi.... (solo x IE)

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    
    </html>
    il loro però funziona anche con FireFox

  6. #6
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Originariamente inviato da james
    il loro però funziona anche con FireFox
    Era solo x mostrarti come fosse possibile fare.

  7. #7

    inoltre...

    come si fa a rendere 'aaa', 'aab', etc.... cliccabili?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.