Tôi đang cố gắng nhóm một số hàm cấp cao nhất hiện có bên trong một đóng cửa (để tránh gây ô nhiễm không gian tên chung) nhưng tôi không hoàn toàn làm cho nó hoạt động.Đóng/phạm vi JavaScript/jQuery
Đầu tiên, tất cả JS hoạt động bên ngoài chức năng ẩn danh của tôi, nhưng khi tôi đặt vào chức năng ẩn danh, tôi nhận được lỗi "crossfade không phải là được xác định". Có ai nhìn thấy bất cứ điều gì hoàn toàn rõ ràng rằng tôi thiếu không?
Tôi không hiểu tại sao setInterval/crossfade hoạt động bên ngoài chức năng ẩn danh nhưng không ở bên trong. Bất cứ điều gì bên trong start() nên có thể nhìn thấy vars/chức năng bên ngoài bắt đầu() và tất cả nên được bảo vệ trong đóng cửa được tạo ra bởi các chức năng vô danh cấp cao nhất? Tôi không cố gắng truy cập vào bất kỳ nội dung nào trong vòng crossfade(), tôi chỉ cần cố gắng thực hiện.
(function($) {
//vars up here that internal functions can access
//also using some jquery inside here, so using $
function crossfade() {
//body here
}
//other functions
function start() {
//body here
cInterval = setInterval('crossfade()', 5000);
}
})(jQuery);
Cảm ơn nhiều điều này đang làm việc cho tôi. –