jQuery按类和id组合显示div

时间:2014-10-31 06:08:46

标签: jquery html

我得到了这个HTML:

<img src="pics/delete.png" class="showdelete" style="position: absolute; display: none" id="1"
<img src="pics/delete.png" class="showdelete" style="position: absolute; display: none" id="2"
<img src="pics/delete.png" class="showdelete" style="position: absolute; display: none" id="3"

到目前为止这个jQuery:

function showdelete(z){
    var show = $(z).attr('id');
}

让我们说var是2.代码看起来如何完成以显示类id为2的showdelete?

修改

好的我从下面得到了解决方案但是尝试在mouseleave上再次隐藏它

我试过: HTML:

<div class="profilfotos" id="' . $row["id"] . '" onmouseover="showdelete(this)" mouseleave="hidedelete(this)">

和jQuery:

function hidedelete(z){
    var show = $(z).attr('id');
    $('img[class=showdelete][id='+show+']').hide();
}

2 个答案:

答案 0 :(得分:0)

试试这个:您可以使用jquery attribute selector来显示div

function showdelete(z){
    var show = $(z).attr('id');
    $('img[class=showdelete][id='+show+']').show();
}

编辑 - 您可以像下面一样编辑脚本

function showdelete(z){
    var show = $(z).attr('id');
    $(".showdelete#"+show).show();
}

但由于id必须是唯一的,所以你应该直接使用id选择器来显示元素,除非你没有任何这样的要求也要使用类选择器

function showdelete(z){
        var show = $(z).attr('id');
        $("#"+show).show();
    }

答案 1 :(得分:0)

如果var为2表示$(z)是目标元素,因此不需要获取id,您可以使用引用z来显示元素

function showdelete(z){
    //no need to get the id
    //var show = $(z).attr('id');
    $(z).show()
}

注意:元素的ID在文档中必须是唯一的