Abecedně seřazené odkazy

Jestliže WWW stránka obsahuje větší množství odkazů nebo krátkých hesel, všichni návštěvníci této stránky uvítají, když budou hesla přehledně uvedena v abecedním pořadí. Při postupném doplňování hesel je velmi zdlouhavé řadit je ručně při zapisování do HTML kódu. Můžeme proto využít jednoduchý kód JavaScriptu, který posloupnost hesel seřadí a vypíše je na WWW stránce. Jak vytvoříte abecedně seřazené odkazy:

1. Vyrobte WWW stránky pro odkazy
Jednotlivá hesla odkazů si očíslujte. Stejná čísla zahrňte do jmen HTML souborů, které patří těmto odkazům. Soubory pojmenujte např. str1.html, str2.html, str3.html apod. Vždy dodržujte stejnou strukturu jména souboru.

2. Vytvořte JavaScript pro řazení odkazů
Do těla www stránky napište obdobný kód JavaScriptu (text za // - do skriptu nepište):


< SCRIPT Language="JavaScript">
//< !-
var indikator=1; 
// - indikátor seřazení
var pomocny_odkaz; 
// - pomocná proměnná řazení a výpisu
window.status='Moment, prosím. Probíhá řazení hesel.'; 
// - hlášení ve stavovém řádku, 
// - informuje uživatele a časové prodlevě
odkaz = new Array(); 
// - deklarace pole hesel
cislo = new Array(); 
// - deklarace čísel odkazů 
odkaz[1]='první heslo'; 
// - napíšeme seznam přesně
// - očíslovaných hesel
odkaz[2]='druhé heslo';
...
odkaz[n]='n-té heslo';
if (odkaz.length >2) 
// - pokud máme v seznamu více než jedno heslo, 
// - seřadíme je
{for(i=1; i< odkaz.length; i++) cislo[i]=i; 
// - vytvoříme vektor čísel pro
// - odkazy na stránky str1, str2, ...
while (indikator >0) 
// - seřadíme hesla podle abecedy
{indikator=0;
for(i=1; i< odkaz.length-1; i++)
{if (odkaz[i] >odkaz[i+1])
{pomocny_odkaz=odkaz[i];
odkaz[i]=odkaz[i+1];
odkaz[i+1]=pomocny_odkaz;
pomocny_odkaz=cislo[i];
cislo[i]=cislo[i+1];
cislo[i+1]=pomocny_odkaz;
indikator=1;
}
}
}
}   
// - konec řazení
for(i=1; i< odkaz.length; i++)
// - vypíšeme všechny odkazy v seznamu 
// - na WWW stránku
// - také můžeme přidat ovládání roloverů
document.write('< A HREF="začátek_jména_HTML_souboru');
// - začneme psát odkaz na WWW stránku, např. "str"	
document.write(cislo[i]); 
// - přidáme číslo hesla - stránky
document.write('.html" >'); 
// - doplníme koncovku HTML souboru
document.write(odkaz[i]); 
// - vložíme text odkazu - heslo
document.write('< /A>'); 
// - ukončíme odkaz
window.status=''; 
// - vymažeme obsah stavového řádku
odkaz=null; // - odstraníme pole
cislo=null;
//->
< /SCRIPT>
Příklad - vytvoření abecedně seřazených odkazů v nabídce Co je to ... ?:
V těle:
< SCRIPT language="JavaScript">
//< !-
var indikator=1;
var pomocny_odkaz;
window.status='Moment, prosím. Probíhá řazení databáze.';
odkaz = new Array();
cislo = new Array();
odkaz[1]='Internet';
odkaz[2]='WWW';
...
odkaz[157]='WYSIWYG editor';
odkaz[158]='XML';
if (odkaz.length >2)
{for(i=1; i< odkaz.length; i++) cislo[i]=i;
while (indikator >0)
   {indikator=0;
   for(i=1; i< odkaz.length-1; i++)
   		{if (odkaz[i]>odkaz[i+1])
		   {pomocny_odkaz=odkaz[i];
		   odkaz[i]=odkaz[i+1];
		   odkaz[i+1]=pomocny_odkaz;
		   pomocny_odkaz=cislo[i];
		   cislo[i]=cislo[i+1];
		   cislo[i+1]=pomocny_odkaz;
		   indikator=1;
		   }
		}
	}
}
for(i=1;i< odkaz.length; i++)
 if(cislo[i]<51)
 {document.write('< A HREF="co');
 document.write(cislo[i]);
 document.write('.htm" target="textco" onMouseOver="imgOn(');
 document.write(i);
 document.write('); return true" onMouseOut="imgOff(');
 document.write(i);
 document.write('); status=\'\'">< IMG name="r');
 document.write(i);
 document.write(
 '" width=9 height=9 src="roloff3.gif" border=0 >');
 document.write(odkaz[i]);
 document.write('< /A>< BR>');
 }
window.status='';
odkaz=null;
cislo=null;
//- >
< /SCRIPT>
Začátek
Předchozí
Zpět