在页面加载我设置一个变量jQuery的变量
$(document).ready(function() {
var inv_count = 3;
});
当我尝试指的是可变的内部功能,虽然,这是行不通的。
function blah(a,b) {
alert (inv_count);
}
这是为什么?我怎样才能解决它?
(菜鸟在这里)
在页面加载我设置一个变量jQuery的变量
$(document).ready(function() {
var inv_count = 3;
});
当我尝试指的是可变的内部功能,虽然,这是行不通的。
function blah(a,b) {
alert (inv_count);
}
这是为什么?我怎样才能解决它?
(菜鸟在这里)
如果声明函数内部变量,变量名称将无法使用该功能的范围之内。移动声明之外的功能:
var inv_count;
$(document).ready(function() {
inv_count = 3;
});
之外,因为它不是全局可访问的变量。 – 2012-04-05 17:18:54
你的scope一个问题,我建议你阅读一些关于它,因为你可以提高你的JavaScript一吨,但你可以在两种常规方法解决这个问题:
var inv_count; //you declare your variable in a global scope, it's not very good practice
$(document).ready(function() {
inv_count = 3;
});
function blah(a,b) {
alert (inv_count);
}
或
$(document).ready(function() {
var inv_count = 3;
function blah(a,b) {
alert (inv_count);
}
//you declare everything inside the scope of jQuery, if you want to acess blah outside use:
//window.blah = blah;
});
此外,我建议你阅读clousures,如果你不知道他们是如何工作的。
非常好的猫! – MCSI 2012-07-24 14:01:50
使'inv_count'成为一个全局变量;它在一个函数里面。将它写在'ready'函数 – mshsayem 2012-04-05 17:15:15