所以我有一个对象或数组,在任何东西的开头声明,在一切之外:
var Thing = {title:'horse'};
然后我有: -
$('.clickedIt').fadeOut(200, function() { console.log(Thing.title); }
那将失败。但是,如果我将退出淡出的同一个控制台日志放在上面,那就没问题了。
所以我有一个对象或数组,在任何东西的开头声明,在一切之外:
var Thing = {title:'horse'};
然后我有: -
$('.clickedIt').fadeOut(200, function() { console.log(Thing.title); }
那将失败。但是,如果我将退出淡出的同一个控制台日志放在上面,那就没问题了。
如果您希望某些东西是全局的,只需在window
Object 上定义它。
window.Thing = { title: 'horse '};
然后像这样使用它:
$( '.clickedIt' ).fadeOut(200, function() {
console.log( window.Thing.title );
});
请注意,不建议在对象上放置一些变量window
,我建议查看名称间距:http ://addyosmani.com/blog/essential-js-namespacing/
这是一个例子:
//simple JavaScript module
( function( window ) {
//define your applications root namespace
window.myApp = {
Thing: { title: 'horse '}
};
})( window );
//jQuery ready function
$( function() {
$( '.clickedIt' ).fadeOut( 200, function() {
console.log( myApp.Thing.title );
});
});
您分配给标题 horse 的值是未定义的,将其用引号括起来以使其成为字符串字面量,
var Thing = {title:'horse'};
$('.clickedIt').fadeOut(200, function() { console.log(Thing.title); })