2010-12-11 4 views
0

J'ai rencontré l'erreur suivante des fonctions javascript suivantes, des idées ce qui ne va pas?null exception en javascript

BTW: comme toute la page est longue, je ne peux pas tous les poster ici. J'essaye de trouver un petit mais complet échantillon pour reproduire ce problème. Des idées pour déboguer plus loin pour trouver la cause première?

'Null' is null or not an object 

Script:

<script> 
     $(document).ready(function() { 
      $("#tag0").tooltip({ effect: 'slide'}); 
     }); 
</script> 

merci à l'avance, George

+2

Le code fonctionne-t-il sans problèmes lorsque vous enlevez cette pièce? –

+0

Pour la fonction info-bulle, j'utilise cette bibliothèque. http://flowplayer.org/tools/demos/tooltip/index.html – George2

+2

Utilisez firebug dans firefox ou les outils de développement en chrome, et vous devriez être capable de cliquer sur cette erreur et cela vous mènera directement à la ligne qui a causé il. Puis - publiez cette ligne et son code environnant ici. –

Répondre

1

Ma première hypothèse était que

$("#tag0") 

est de retour nul, et d'essayer d'appeler une méthode sur null est probablement en train de vous donner l'erreur. J'ai été informé que jQuery ne retournera pas réellement null si votre sélecteur ne correspond à rien - vous obtenez juste un ensemble vide de résultats avec une propriété length de 0. Si vous appelez une méthode inexistante sur un objet de ce type de résultat , peut-être vous obtenez le message d'erreur que vous voyez.

Est-il possible qu'il n'y ait pas d'élément sur la page avec l'ID "tag0"? Devrait-il être une classe à la place (".tag0" au lieu de "# tag0")?

+2

jQuery '$ (x)' ne renverra pas null, il retourne quelque chose comme $ (x) .length == 0' est vrai à la place. –

+1

@mu Merci, j'ai mis à jour le commentaire pour refléter le comportement de jQuery ici. – Zach

+0

Je trouve tag0 est défini de cette façon, order0, est-ce exact? – George2