从jquery中的其他文件调用变量

时间:2010-09-23 02:02:25

标签: jquery

我有这个index.html

    <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>

和这个jqFunc.js

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

问题是价值6不会出现.. 从其他文件中调用变量的方法是什么?

3 个答案:

答案 0 :(得分:3)

我已经测试过,它工作正常

<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>

可能存在问题
<script type="text/javascript" src="js/jquery-latest.js"></script>

js / jquery-latest.js 文件不要退出!

答案 1 :(得分:0)

你必须将kamote放在全局窗口对象中。

尝试:

<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>

和这个jqFunc.js

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

答案 2 :(得分:0)

javascript是一名翻译。它将逐行读取您的代码,然后执行它。你错过了那里的逻辑。警报后,您已为变量分配了值。这不是你所期望的。

试试这个,

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

看看我的意思。 ;)

补充说明:

但是你仍然可以在某个时间获得所需的输出。这是因为您已使用就绪处理程序事件包装警报。如果你的DOM需要很长时间才能准备就绪,警报将是6.但如果它很快,你就不会得到6。