求JS判断代码,当这个DIV里有某个图片时,便隐藏这个DIV 5
求JS判断,当这个DIV里有某个图片时,便隐藏这个DIV比如:页面中有多个haoimg的class,代码如下:<divclass="haoimg"><ahref="1.h...
求JS判断,当这个DIV里有某个图片时,便隐藏这个DIV
比如:
页面中有多个haoimg的class,代码如下:
<div class="haoimg"><a href="1.html"><img src="to.gif" align="absmiddle" height="160" border="0"/></a></div>
<div class="haoimg"><a href="1.html"><img src="别的图片.jpg" align="absmiddle" height="160" border="0"/></a></div>
以上代码中,当这个class里有图片to.gif时,这个class就隐藏。反之如果是别的图片就正常显示。 展开
比如:
页面中有多个haoimg的class,代码如下:
<div class="haoimg"><a href="1.html"><img src="to.gif" align="absmiddle" height="160" border="0"/></a></div>
<div class="haoimg"><a href="1.html"><img src="别的图片.jpg" align="absmiddle" height="160" border="0"/></a></div>
以上代码中,当这个class里有图片to.gif时,这个class就隐藏。反之如果是别的图片就正常显示。 展开
2个回答
展开全部
用jquery的话其实很好做,只要判断是否有src="to.gif"的img元素就可以了,难点在于捕获事件。
操作如下
function judgeImg() {
var img = $("haoimg").find("img[src='to.gif']"); // 寄存选择
if (img.length > 0) { // 判断是否存在该图片
img.parent().hide();
}
}
你这里的难点其实是事件的捕获,你先要确定“到底什么时候,会出现这个img”
例如说某个按钮的点击后,或者某个效果后。
如果实在是不确定到底什么时候会出现,那就只能用DOMSubtreeModified 事件了,通过绑定document的这个事件,就可以在每次你document下的元素发生变化时进行判断了
$(function() {
$(document).on('DOMSubtreeModified', function() {
judgeImg();
})
})
这样很明显会影响效率,所以建议你先确定出现的事件
如果不用jquery的话也能办到,不过稍微复杂些
追问
谢谢,我的要求很简单,不需要确定到底什么时候出现这个to.gif的img,
请问代码应该如何写?谢谢
追答
既然不确定的话,就只能在DOMSubtreeModified事件中进行处理了。
按照我给你的示例,是肯定可以实现的,不过这样子因为节点一发生变化就需要判断一次,肯定会影响效率(不过如果前端不是很复杂,基本上是完全察觉不出来的)。
但是建议你还是重新设计下,因为结构设计合理了,肯定是能确定相应的事件的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询