鼠标悬停元素

时间:2010-12-07 22:44:02

标签: jquery mouseover

为什么我不能这样做?

if($('.element').mouseover() == true)
{
}
else
{
}

我想知道如果没有做其他事情的话,什么时候mosue是在元素上面。

以下是现在可以使用的完整代码。我摆脱了if语句......

$('.product_image').hover(function(){
  var image = $(this).attr('class');
  image = '.' + image.substring(14);
  $(image).fadeIn();
});
$('.product_disc').mouseleave(function(){
  $('.product_disc').fadeOut();
});

5 个答案:

答案 0 :(得分:2)

我经常使用这种模式:

$('.element').mouseenter(function() {
    $(this).addClass('hover');
}).mouseleave(function(){
    $(this).removeClass('hover');
});

现在您可以使用is method查看鼠标是否在元素上。

使用mouseenter和mouseout是有原因的 - 它与嵌套元素有关。您可以看到here

答案 1 :(得分:0)

$(".element").mouseenter(function() {

    alert('Mouse over the element');

}).mouseleave(function() {

    alert('Mouse out');

});

答案 2 :(得分:0)

还有一个最新的......很快就用了

$(".element").hover(
  function () {
   //this is mouseover
  }, 
  function () {
   //this is mouseout
  }
);

答案 3 :(得分:0)

jQuery使用的语法与通常编写的语法不同。他们的标记行曾经是“它会改变你编写JavaScript代码的方式”。你必须像这样使用mouseover():

$('.element').mouseover(function() {
    // Use $(this) to access the element where the mouse is entering.
}).mouseout(function() {
    // Use $(this) to access the element where the mouse is exiting.
});

还要注意类似的mouseenter()和mouseleave()方法。在这里查看官方文档:http://api.jquery.com/mouseover/

答案 4 :(得分:0)

这是一个有效的例子:

http://www.jsfiddle.net/mSkx5/1/

这使用了jQuery的hover函数。

祝你好运!

编辑:这是mouseover

的工作示例

http://www.jsfiddle.net/mSkx5/2/