我試圖訪問在函數外部設置的.click
函數內的變量的值,但我會得到錯誤,任何人都可以告訴我我做錯了什麼?當單擊事件處理至少運行一次,因爲你設置事件處理程序jquery中的變量作用域
0
A
回答
3
點擊還不occure裏面的id變量
var id;
var currentPosition;
var slideWidth = 368;
var slides;
var numberOfSlides;
$('#accordion_catering h3').click(function() {
id = $(this).attr('id');
$('#' +id+'_gallery').show();
//alert(id);//works
});
alert(id); // is undefined
// Because id is undefined these don't work .
slides = $('.' + id + '_slide');
numberOfSlides = slides.length;
3
ID纔會被置,所以ID沒有設定......這不是關於可變範圍,詳細瞭解事件及其處理程序:)
爲你添加一個CMT,我適應我的解決方案如下:
var currentPosition;
var slideWidth = 368;
var slides;
var numberOfSlides;
$(document).ready(function() {
var element = $('#accordion_catering h3');
element.click(function() {
var id = $(this).attr('id');
DisplayGallery(id);
});
element.trigger('click'); // maybe you want to trigger it
});
function DisplayGallery(id) {
$('#' + id +'_gallery').show();
slides = $('.' + id + '_slide');
numberOfSlides = slides.length;
}
0
var id;
var currentPosition;
var slideWidth = 368;
var slides;
var numberOfSlides;
$(document).ready(function() {
$('#accordion_catering h3').click(function() {
id = $(this).attr('id');
$('#' +id+'_gallery').show();
//alert(id);//works
slides = $('.' + id + '_slide');
numberOfSlides = slides.length;
});
$('#accordion_catering h3').trigger('click');
alert(id); // is defined
)};
所以,基本上,不要訪問id,直到這個事件被觸發,它纔會被設置。
相關問題
- 1. jQuery變量作用域?
- 2. jQuery中的變量作用域問題
- 3. jQuery的 - 變量的作用域問題
- 4. jQuery變量作用域?說未定義
- 5. jQuery變量作用域 - 變量不會改變其值
- 6. 變量的作用域
- 7. 變量的作用域/ express.js
- 8. jQuery.get()變量的作用域
- 9. ASP.Net變量的作用域
- 10. JavaScript變量的作用域
- 11. AJAX調用中的變量作用域
- 12. 按鈕變量作用域 - 如何更新父範圍中的變量? jQuery的
- 13. 的jQuery/JavaScript中,變量的作用域問題
- 14. 變量作用域和全局變量
- 15. 檢查IronRuby作用域中的變量
- 16. Java中變量的作用域
- 17. 作用域,C中的變量訪問#
- 18. c中變量的作用域#
- 19. Rails中的作用域配置變量
- 20. Python中變量作用域的問題
- 21. getJson grep中的變量作用域
- 22. 類中的靜態變量作用域?
- 23. JavaScript中的嵌套變量作用域
- 24. C#中的作用域變量?
- 25. XSLT中的變量作用域?
- 26. Python中的變量作用域問題
- 27. php中的變量作用域
- 28. 循環中變量的作用域
- 29. unix中函數變量的作用域
- 30. Angular:作用域變量中的$
嗨,感謝您的迴應,我設置點擊功能的id的原因是因爲我顯示基於ID的不同畫廊,所以我得到的ID值一旦點擊並顯示相應的畫廊,也每個圖庫中有不同數量的幻燈片,這就是爲什麼numberOfSlides需要連接到Clickv函數 – amir 2010-02-17 12:28:03
內的特定ID做了更新! – 2010-02-17 12:33:55