Utilisation de javascript:fonction(), href="#" + onclick, void(0), et return false: Pourquoi? Comment? Différences entre navigateurs (surtout!)

Bonjour à tous, je cherche un tutoriel, ou une âme charitable qui pourrait m'expliquer le pourquoi et le comment de l'utilisation de l'appel de fonction javascript dans des liens. Et surtout les différences entre navigateurs (je bosse surtout avec Safari, j'ai des problèmes quand je passe à Firefox: ouverture de page avec href="javascript:mafonction()" par ex. Et je n'ai pas IE dont j'aimerais bien savoir quand même le comportement dans ce cas).
Qu'est-ce que cet ovni void()? ça sert à quoi? est-ce une fonction prédéfinie? Un rapport avec les id? doit-on lui passer un argument?
Pourquoi return false? quand faut-il l'indiquer? est-ce utile seulement à Firefox? et pour IE? Et pour les boutons de formulaires qui appellent des fonctions javascript?

J'ai un cas dans Firefox où :
<li><a href="javascript:showoptions()">Show/Hide View Options</a></li>
fonctionne sans ouvrir de page, par contre
<li><a href="#" onclick="showoptions()">Show/Hide View Options</a></li>
pas du tout! Je m'attendais au contraire surtout que dans ce menu liste (li) il a fallu que je vire tous les href="javascript:fonctions()" par des onclick pour que sous Firefox il n'y ait pas d'ouverture de pages intempestives. Mais il reste ce récalcitrant sus-mentionné! comprends plus rien. Donc Help!

Merci.
Partager