为什么我不能这样做?
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();
});
答案 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)