11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous

je suis sur un petit projet de développement de sites en XHTML (mime-type: application/xhtml+xml).

Tout s'est assez bien passé jusque là, mais maintenant je bloque sérieusement sur un problème lié à mes codes JavaScript.

J'ai dans un fichier externe (javascript.js)
<!--
function test() {
alert("ok");
}
//-->


et je l'insère dans mon .xhtml de cette façon

<script type="text/javascript" src="./javascript.js"></script>


Bon je sais, rien d'extraordinaire ^^ je tourne un peu autour du pot.
Après une heure de recherche, j'ai enfin compris que:

<a href="#" onClick="test(); return false;">test</a>

ne fonctionnerait jamais, mais qu'à la place il fallait mettre

<a href="JavaScript: test();">test</a>

A partir de ce moment-là, (petite victoire), mon message d'alerte se montre. Seulement, cette solution n'est pas vraiment pratique...

Comment je fais pour faire réagir mon lien au survol.
Ou pour appeler une fonction lors du clique, avant de charger une page ?

J'ai cherché et je suis tombé sur un article démoralisant qui disait que ce n'étais aps possible en xml (d'après ce que j'ai compris bien sûr) Smiley sweatdrop Smiley bawling

Donc je m'en remès à vous, en espérant obtenir de l'aide.
Modifié par just1dks (01 Sep 2007 - 13:58)
Moi dejà j'enlèverais '<!--' et '//-->' dans le fichier extèrne.

Ensuite, oublie les majuscule pour onClick et href="JavaScript: test();" c'est pas térrible (mais c'est pas ça qui empêche de fonctionner)

Logiquement ton premier essai (<a href="#" onClick="test(); return false;">test</a>) devrait fonctionner.

Ensuite si tu fais de l'XHTML tu ferais bien de nommer ton fichier en .html. Et ce que tu veux en X(HT)ML, c'est bien possible.
Ne mélange pas XML et XHTML (bien que l'XHTML soit de l'XML).

Pour les évènments, fais un tour par là : http://giminik.developpez.com/xhtml/a.html
merci de tes conseils Smiley smile

j'ai un peu abandonné le xml donc voila
je vai regarder ton lien mas je ne posterai plus ici;

encore merci
ah,
j'ai quand même testé les choses sans majuscules

Et il se trouve que c'est cela qui perturbait tout...

<a href="#" onclick="test(); return false;">test</a>

Modifié par just1dks (01 Sep 2007 - 13:54)