2013-12-13 74 views
-2

我嘗試通過JS函數更改圖像的大小。 我有桌子和圖片,我希望如果用戶點擊圖片,她的尺寸將變爲400,400,所有其他圖片將設置爲默認100,100。 我爲在進入下一個功能表中的所有圖像OnClick事件:使用jquery和JS更改CSS

function ChangeSize(it) { 
    $('td img not(it)').css({"width":"100","height":"100"}); 
    if (it.width == 100) 
    { 
     it.width = 400; 
     it.height=400; 
    } 
    else 
    { 
     it.width = 100; 
     it.height=100; 
    } 
} 

我知道我的jQuery的不能正常工作。但我該怎麼做?

謝謝!

+0

什麼是'it'價值? – Satpal

+0

這是表中每個圖像的事件:onclick =「ChangeSize(this)」 – user2970484

+0

'$(「td img」)。click(function(){$(「td img」)。css({「width」 :「100」, 「height」:「100」}); $(this).css({「width」:「400」, 「height」:「400」});});' – TCHdvlp

回答

1

一個更好的方式實現這一目標是設置大小爲100x100的默認大小和點擊一個類應用類:

td img { 
    width: 100px; 
    height: 100px; 
} 
img.selected { 
    width: 400px; 
    height: 400px; 
} 

function ChangeSize(it) { 
    $('td img').removeClass('selected'); 
    $(it).addClass('selected'); 
} 
0

而是使用:

function ChangeSize(it) { 
    $('td img').not(it).css({"width":"100px", 
     "height":"100px"}); 
    if (parseInt(it.width) == 100) 
    {it.width = 400+'px'; 
    it.height=400+'px';} 
    else 
    {it.width = 100+'px'; 
    it.height=100+'px';} 
    } 

我希望這次修復了這個bug

+1

它應該是':not()' – Christoph

+0

實際上,它應該是$('td img')而不是(它) – Sayed

+1

好吧,您可以使用':not()'作爲選擇器或'.not )'作爲方法。在這種情況下,如果你有一個Dom-Element而不是一個選擇器字符串,你當然需要後者。我只想指出,選擇器的語法錯誤。 – Christoph

0

未測試:

function ChangeSize(it) { 
    $('td img').css({"width":"100", "height":"100"}); 
    $(it).css({"width":"400", "height":"400"}); 
} 
3

如果it是一個DOMElement:

$('td img not(it)')是無效的選擇,使用$('td img').not(it)