onclick和mouseout的矛盾

对于每张图片,想实现:鼠标悬停就显示:ID_ON.PNG,鼠标移出就显示:ID.PNG,而点击也显示:ID_ON.PNG。下面的代码的问题是:鼠标点击一张图片过后鼠标移出... 对于每张图片,想实现:鼠标悬停就显示:ID_ON.PNG,鼠标移出就显示:ID.PNG,而点击也显示:ID_ON.PNG。下面的代码的问题是:鼠标点击一张图片过后鼠标移出此图片,图片依然执行mouseout变成ID.PNG,我想要的效果是ID_ON.PIG。请问怎么判断点击了就不执行mouseout方法了?非常谢谢你!
$(document).ready(function(){
$(".dh li").click(function(){
var $img_name=$(this).children('img').attr("id");
var $img_on="images/"+$img_name+"_on.png";
var $other=$(".dh img").not("#"+$img_name);
$(this).children("img").attr("src",$img_on);
$other.each(function(){
$(this).attr("src","images/"+$(this).attr("id")+".png");
});
});

$(".dh li").mouseover(function(){
var $img_name=$(this).children('img').attr("id");
var $img_on="images/"+$img_name+"_on.png";
$(this).children("img").attr("src",$img_on);
});
$(".dh li").mouseout(function(){
var $img_name=$(this).children('img').attr("id");
var $img_out="images/"+$img_name+".png";
$(this).children("img").attr("src",$img_out);
});
});
HTML:
<ul class="dh">
<li id="home"><img id="home" src="images/home.png" /></li>
<li id="club"><img id="club" src="images/club.png" /></li>
<li id="tch"><img id="tch" src="images/tch.png" /></li>
.....
</ul>
展开
 我来答
百度网友6cadfd5
2010-12-17 · TA获得超过127个赞
知道答主
回答量:78
采纳率:0%
帮助的人:67万
展开全部
定义一个变量 var isClick = true;
在点击事件的时候就把 isClick = false;
然后在mouseout的时候判断isClick 是否为TRUE,如果为TRUE,就执行,为false就不执行
总体代码如下:

var isClick = true; // 定义变量
$(document).ready(function(){
isClick = false; // 改变变量值
$(".dh li").click(function(){
var $img_name=$(this).children('img').attr("id");
var $img_on="images/"+$img_name+"_on.png";
var $other=$(".dh img").not("#"+$img_name);
$(this).children("img").attr("src",$img_on);
$other.each(function(){
$(this).attr("src","images/"+$(this).attr("id")+".png");
});
});

$(".dh li").mouseover(function(){
var $img_name=$(this).children('img').attr("id");
var $img_on="images/"+$img_name+"_on.png";
$(this).children("img").attr("src",$img_on);
});
$(".dh li").mouseout(function(){
if(isClick) { // 当isClick为TRUE的时候,就执行,否则不执行
var $img_name=$(this).children('img').attr("id");
var $img_out="images/"+$img_name+".png";
$(this).children("img").attr("src",$img_out);
}
});
});
HTML:
<ul class="dh">
<li id="home"><img id="home" src="images/home.png" /></li>
<li id="club"><img id="club" src="images/club.png" /></li>
<li id="tch"><img id="tch" src="images/tch.png" /></li>
.....
</ul>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式