所以我有一個對象或數組,在任何事情開頭聲明的,外面的一切:我無法訪問陣列/ OBJ以外的jQuery事件函數
var Thing = {title:'horse'};
然後我有: -
$('.clickedIt').fadeOut(200, function() { console.log(Thing.title); }
這將失敗。但是,如果我將上述相同的控制檯日誌放在fadeOut之外,那就沒問題了。
所以我有一個對象或數組,在任何事情開頭聲明的,外面的一切:我無法訪問陣列/ OBJ以外的jQuery事件函數
var Thing = {title:'horse'};
然後我有: -
$('.clickedIt').fadeOut(200, function() { console.log(Thing.title); }
這將失敗。但是,如果我將上述相同的控制檯日誌放在fadeOut之外,那就沒問題了。
如果你想要某些東西是全局的,只需在window
對象上定義它即可。
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);
});
});
T他珍惜你分配給冠軍馬引號內未定義包裹它,使之弦litral,
var Thing = {title:'horse'};
$('.clickedIt').fadeOut(200, function() { console.log(Thing.title); })
它是如何失敗? 「fadeOut」在「Thing」方面被稱爲? – pimvdb 2012-08-17 15:54:22
你能爲我們提供一個更完整的腳本嗎?這裏的問題很大程度上取決於「事情」的範圍。 – jackwanders 2012-08-17 15:55:13