這行代碼:
$('.resize').css({'width': new_size, 'height': new_size});
是不是做你認爲它是。爲了讓對象在添加類時更改大小,您需要一個實際的CSS規則,該規則指定.resize
類,該規則不適用於動態計算的大小。
這行代碼只是用.resize
類設置任何對象的高度和寬度,並且沒有爲沒有該類的對象做任何事情。因此,你可以調整一次對象的大小(當它有這個類時)並且再也不會改變它的大小。它不會切換任何東西。
我建議你保存舊的尺寸,然後你可以在需要時恢復它,並保存切換值。 jQuery的。數據()函數工作得很好保存此類信息的:
$(document).ready(function() {
$(this).click(function() {
var this$ = $(this);
// if it's currently at the dynamic size, restore the original size
if (this$.data("dynamicallySized")) {
$(this.css(this$.data("origSize"))
.data("dynamicallySized", false); // set flag that we're not dynamic
} else {
// save original size
this$.data("origSize", {height: this$.height(), width: this$.width()})
.css(new_size)
.data(dynamicallySized", true); // set flag that we're dynamically sized
}
});
});
' toggleClass'是這個簡單的方法。 – Starx 2012-03-06 07:04:28
如果toggleclass不工作可能你的css規則對於那個類不夠具體 – charlietfl 2012-03-06 07:12:39
@charlietfl:我如何使它更具體? – 2012-03-06 07:15:22