2013-12-13 38 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)