我有一系列DIV,每个都有一张X的图像:
<div class="hotspot" id="hs1" class="hotspot"><img src="images/xmark.png" alt="x"></div>
我想要做的是从隐藏但仍可点击的开始,然后点击显示里面的图像。
如果我使用
<div class="hotspot" id="hs1" class="hotspot">
<img class="x" src="images/xmark.png" alt="x">
</div>
.hotpsot img { visibility: hidden;}
然后
$('#hs1').click(function(){
$(this).find(img).show();
});
div确实获得了点击,但图片未显示。
我也尝试过display:none和children()
答案 0 :(得分:1)
试试这个:
$('#hs1').click(function(){
$(this).find('img').show();
});
错过img
选择器周围的引号。
另外,一个建议。请删除以下HTML标记中的双class
属性:
<div class="hotspot" id="hs1" class="hotspot">
<img class="x" src="images/xmark.png" alt="x">
</div>
只有一个class
属性就足够了:
<div class="hotspot" id="hs1">
<img class="x" src="images/xmark.png" alt="x">
</div>
答案 1 :(得分:0)
将img
括在引号中以使用标记选择器获取元素,其他明智的img
将被视为变量。您没有正确关闭img标记/
丢失。
图片被visibility:hidden
隐藏,但展示使用显示属性而不是visibility
使用display:none
中的css
,这是show方法使用的。
<强> Live Demo 强>
$('#hs1').click(function(){
$(this).find('img').show();
});