我有一排圖像,當單擊其中一個圖像時,它會展開,同時也會縮小可能會放大的任何其他圖像。如果你點擊放大的圖片,它只會縮小。jQuery自定義函數並將參數傳遞給它們
我收到'收縮未定義'錯誤消息。提前致謝。
$.fn.grow = function(size,rate) {
$(this).addClass('click').animate({'height': size}, rate);
}
$.fn.shrink = function(size,rate) {
$('img').removeClass('click').animate({'height': size}, rate);
}
$(document).ready(function() {
$('#gallery img').click(function() {
var $this = $(this);
($this.hasClass('click')) ? $this.shrink('139', '200') : $this.shrink('139', '200').grow('700', '200');
});
});
爲什麼你要聲明:var $ this = $(this); 我想說,使用變量名稱中的$選擇器來調整JQuery cuz ur。我不是100%確定是否允許這樣做,如果那是原因。但嘗試使用$(this),或者以不同的方式聲明你的變量..就像var me = $(this); – Jules
@Jules具有前導'$'的變量在JavaScript中有效。 – alex
其實很多人都認爲這個變量實際上是一個jQuery對象。 –