當我執行下面的代碼時,我期望相同的元素id被警告兩次,但是第一個是正確的,而第二個總是顯示名稱該集合中的第一個元素。
$("div.someClass").each(function (index) {
$(this).click(function() {
alert($(this).attr("id")); // Here i get the actually clicked element
$.when($("div.someClass").animate({ }, 0)).then(function() {
alert($(this).attr("id")); // Here i get the first element in of that class
});
});
});
爲什麼會這樣?如何解決它?我試過將元素的名稱傳遞給函數,但它不起作用。
當你點擊一個div時,你希望它們都具有相同類別的動畫?您正在重新選擇'$ .when'中的div,因爲只有在抓取集合中第一個項目的id屬性時才調用'.then'回調。 – MrOBrian 2012-07-27 17:00:31