【问题标题】:does a click also trigger a mouseout in chrome单击是否也会触发 chrome 中的鼠标移出
【发布时间】:2013-08-01 01:31:30
【问题描述】:

我正在测试我正在开发的评级模块,有一个相当简单的结构的想法,可以实现基于 ajax 的平滑投票,但发现了一些奇怪的东西..

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

在测试中,我发现一切正常,但是当我点击时,它有时会重置内部 DIV 的宽度,如果我将鼠标悬停会这样做,我不确定我是否明白为什么.我正在包括一个工作示例。

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

【问题讨论】:

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


    【解决方案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 有时很奇怪...

    【讨论】:

    • 这清除了大部分问题,但我仍然间歇性地收到一些我似乎无法诊断的奇怪点击行为。
    • 似乎将 mouseout 更改为 mouseleave 可以解决第二个问题。鼠标悬停是一个奇怪的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-08
    • 1970-01-01
    • 1970-01-01
    • 2010-09-14
    • 1970-01-01
    • 1970-01-01
    • 2014-06-19
    相关资源
    最近更新 更多