点击还会触发chrome中的mouseout

时间:2013-07-31 16:36:48

标签: javascript jquery google-chrome mouseout mouseclick-event

我正在测试一个我正在研究的评级模块,有一个相当简单的构造的想法,允许基于ajax的流畅投票,但发现了一些奇怪的东西..

结构是两个div,一个嵌套在另一个中以显示星星,鼠标设置宽度,这将在以后的投票中转换为百分比。

在测试中,我发现一切正常,但是当我点击时,它有时会使内部DIV的宽度重置,这就是如果我被淘汰它会怎么做,我不确定我理解为什么。我要包括一个有效的例子。

http://www.nogumallowed.com/test.php

1 个答案:

答案 0 :(得分:1)

这是固定代码:

$(".ratingsBlock").mousemove(function(e){
    $(".ratingsScale").width(e.offsetX);
});

$(".ratingsBlock").click(function(e){
    $(this).attr("score",e.offsetX);

});

$(".ratingsBlock").mouseleave(function(e){
    $(".ratingsScale").width($(this).attr('score'));
    //$(".ratingsScale").animate({width:$(this).attr('score')+'px'}, 500);
});

我将mouseOut函数更改为mouseLeave,并在点击.ratingsBlock时更新了评分的分数。

mouseOut有时很奇怪......