2010-09-23 6 views
1

j'ai ce index.htmlappel variable d'un autre fichier dans jquery

<script type="text/javascript" src="js/jquery-latest.js"></script> 
    <script type="text/javascript" src="jqFunc.js"></script> 
    <script type="text/javascript"> 

      var kamote = 6; 

    </script> 

et ce jqFunc.js

$(function(){ 
    alert(kamote); 
}); 

le problème est la valeur 6 semble wont .. ce qui est une façon de appelez les variables d'un autre fichier comme ça?

Répondre

3

Je l'ai testé, son travail bien

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript" src="jqFunc.js"></script> 
<script type="text/javascript"> 
var kamote = 6; 
</script> 

Il pourrait y avoir un problème avec

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

-à-dire js/jquery-latest.js fichier DonT sorties!

+0

J'ai une explication sur ma réponse à ce sujet. ;) – Reigel

+0

@Reigel ya essayé de répondre que sur votre poste. ce décalage n'a pas de sens ici. –

+0

est-ce que c'est possible? $ (Document) .ready (function() { .post $ ('settings.php varretour = slideSpeed?', Function (e) {var x = e; }); alerte (x);} ) je n'ai pas de réponse de x mais si je remplace var x = e avec alerte (e), je fonctionne bien –

0

Vous devez placer kamote dans l'objet fenêtre global.

Essayez:

<script type="text/javascript" src="js/jquery-latest.js"></script> 
<script type="text/javascript" src="jqFunc.js"></script> 
<script type="text/javascript"> 
    window.kamote = 6; 
</script> 

et ce jqFunc.js

$(function(){ 
    alert(window.kamote); 
}); 
+0

'var kamote = 6;' en dehors d'une fonction fera la même chose. – Strelok

+0

@Strelok Bon point, j'aurais dû réfléchir un peu et tester avant de sauter dedans. Mon premier downvote;) – Day

+0

En fait le code de l'OP fonctionne pour moi quand je le teste ... – Day

0
javascript

est un interprète. Il lira vos codes ligne par ligne et ensuite l'exécutera. Vous avez manqué la logique là-bas. Vous avez affecté une valeur à une variable après l'avoir alertée. Ce qui n'est pas la chose que vous attendiez.

essayer,

<script type="text/javascript"> 
    var kamote = 6; 
</script> 
<script type="text/javascript" src="jqFunc.js"></script> 

et voir ce que je veux dire. ;)

ajouté notes:

mais vous pouvez obtenir la sortie désirée à un moment donné. C'est parce que vous avez enveloppé votre alerte avec l'événement de gestionnaire prêt. Si votre DOM prend beaucoup de temps pour être prêt, alerte sera 6. Mais si elle est rapide, vous ne recevrez pas 6.

Questions connexes