使用删除classname显示/隐藏图像功能

时间:2015-05-14 15:28:28

标签: javascript jquery

我正在使用以下功能显示用户在上面的div中点击的图像。

如果用户再次点击已填充的图像(在div中),我想删除div中的图像并再次显示原始图像。

oldList=[a,b,c,d,e,f,g,h,i,j,...]

.hideitem是一个带有display:none;

的类

函数中的onClick事件不起作用(我试图删除类名),并且当使用onClick事件单击时,我无法删除div图像。

有人有想法解决这个问题吗?

由于

1 个答案:

答案 0 :(得分:0)

您的代码中有一些缺少的引号和内容。

对于这个HTML:

<img id="myImgID" src="http://placehold.it/350x150" url="http://placehold.it/150x150" name="Example Dot Com" onClick="javascript:changeImage(this)" />
<div id="test">
    <p>this is only a test</p>
</div>

这个JS:

changeImage = function (item) {
    var $item = $(item),
        $test = $('#test'),
        url_img = $item.attr('url'),
        name_item = $item.attr('name'),
        newDiv = $('<div/>').css('display', 'inline-block').text(name_item),
        newImg = $('<img/>').attr({'src':url_img, 'url':url_img})
            .click(function(e){$item.removeClass('hideitem')}).prependTo(newDiv);

    $test.append(newDiv)
    $item.toggleClass('hideitem');
}

See it in action here