4

我对这段代码有疑问(我做了一个 jsfiddle http://jsfiddle.net/r2y8J/)。

$(document).ready(function() {
 /*$(".bulletProj").mouseenter(function () {
     console.log("You're Over!");
     $(".caption").animate(
        {top: "0px"},
        300, function() {
            console.log("i slided");
        });
    });
    $(".bulletProj").mouseleave(function() {
    $(".caption").animate(
        {top: "-200px"},
        300, function() {
            console.log("i left");
        });
    });*/
    $(".bulletProj").mouseenter(function() {
       console.log("mous is over");
       $(".caption").toggle();
    }).mouseleave(function () {
       console.log("mous leaves");
       $(".caption").toggle();
  });
});

由于我尝试了更多方法,因此对部分代码进行了注释。

我想要做的是有一个带有一些文本和 bg 图像的 div,当鼠标悬停在它上面时,另一个 div 应该用一个按钮向下滑动。问题是我尝试了 .mouseover .mouseout、.mouseeneter 和 .mouseleave 但它一直在闪烁。我发现当我看完文本时它会停止,但如果我在 div 的空白处,它会继续闪烁。有人有想法吗?非常感谢。

4

5 回答 5

10

尝试这个:

$(document).ready(function() {  
    $(".bulletProj,.caption").mouseenter(function() {              
         $(".caption").toggle();        
    }).mouseleave(function () {     
        $(".caption").hide();
    });
});

在这里工作小提琴:http: //jsfiddle.net/r2y8J/4/

我希望它有所帮助。

于 2013-09-02T10:34:29.143 回答
2

您可以轻松使用

.caption{pointer-events:none}

http://jsfiddle.net/r2y8J/5/

于 2013-09-02T10:34:23.670 回答
1

尝试这个。

$(".bulletProj").mouseenter(function() {
        console.log("mous is over");
        $(".caption").toggle();
    }).mouseleave(function () {
        console.log("mous leaves");
        stopImmediatePropagation();
        $(".caption").toggle();

    });
于 2013-09-02T10:42:43.427 回答
0
var caption = $(".caption");
$(".bulletWrapper").hover(function(){
    console.log("mous is over");
    caption.toggle();
}, function(){
    console.log("mous leaves");
    caption.toggle();
});

或者

$(".bulletWrapper").bind("mouseenter mouseleave", function(){
    $(".caption").toggle();
});
于 2013-09-02T10:34:32.060 回答
0

我遇到了类似的问题,在我的情况下,我使用css: opacity如下方式来停止闪烁

CSS:

.caption {
width: 300px;
height: 200px;
background-color: #69adf1;
position: absolute;
opacity:0;
}

查询:

$(".caption").mouseenter(function(){
$(this).css('opacity','1');
})
$(".bulletProj").mouseenter(function() {
    console.log("mous is over");
    $(".caption").css('opacity','1');
}).mouseleave(function () {
    console.log("mous leaves");
    $(".caption").css('opacity','0');
});

工作小提琴

于 2013-09-02T10:32:43.177 回答