Utiliser HTML valide, voir http://validator.w3.org/
Ne pas inclure des commentaires inutiles tels que "//for loop"
; Si quelqu'un ne reconnaît pas une boucle for, ce commentaire ne va certainement pas aider beaucoup. Aucun de ces commentaires ne sera utile à personne.
Il est important de simplifier et de supprimer tout ce qui n'est pas lié au problème, tel que le tag link
. Cela aidera à clarifier ce que fait le code.
Pendant que vous y êtes, supprimez jQuery et apprenez à comprendre ce que vous faites.
L'utilisation de jQuery a considérablement augmenté au cours des deux dernières années. Il est maintenant employé pour toutes sortes de choses; des choses qui sont non seulement triviales à accomplir sans jQuery, mais qui sont en réalité plus faciles à accomplir sans jQuery. Cela s'accompagne souvent de plaintes selon lesquelles le code ne fait pas ce que l'on veut, alors que tout ce qui était nécessaire pour savoir pourquoi était une compréhension très élémentaire des technologies pertinentes.
Maintenant à votre problème. Vous voulez que cela fonctionne et ce n'est pas le cas [1].
Le problème que vous devez résoudre est de déclencher le gestionnaire d'événements. Si une stratégie de délégation est souhaitée, comme celle que vous avez essayée avec jQuery live
, cela peut être accompli en ajoutant un rappel de clic sur le document qui inspecte la cible et la gère, en conséquence.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Me | Trying to make you think</title>
<script type="text/javascript">
(function(){
var myArray = [1,2,3];
document.onclick = function(ev) {
var target = getTarget(ev);
if (target && target.id == "clickButton") {
handleClickButtonClicked();
}
};
function handleClickButtonClicked() {
alert(myArray);
}
function getTarget(ev) {
ev = ev || window.event;
return ev ? ev.target || ev.srcElement : null;
}
})();
</script>
</head>
<body>
<p><input type="button" value="click me" id="clickButton"></p>
</body>
</html>
Cependant, compte tenu de votre niveau de compétence, je conseillerais d'y aller encore plus simple et le simple ajout d'un gestionnaire d'événements onclick du bouton directement.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Me | Trying to make you think</title>
<script type="text/javascript">
var myArray = [1,2,3];
</script>
</head>
<body>
<p><input type="button" value="click me" onclick="alert(myArray)" id="clickButton"></p>
</body>
</html>
[1] http://jibbering.com/faq/notes/posting/#ps1DontWork
le code semble bien, assurez-vous que jQuery est effectivement inclus ... – CMS
L'une des premières étapes que vous devez toujours faire lorsque vous avez une programmation de problème est de vérifier d'erreur messages. – goat
Au lieu de 'new Array()' vous pouvez utiliser '[]' pour créer un tableau vide. – gnarf