-1

我真的被困住了。基本上我对 jquery 完全陌生,但需要在鼠标悬停上添加某种计时器,这样如果鼠标在整个页面上移动,页面就不会被弄乱。这是我的脚本..无论如何我可以轻松实现它?

<script>
jQuery('cc').mouseover(function () {  
$("squareleft3").hide();  
$("twitter").hide();  
$("facebook").hide();  
$("squareright").hide();  
$("getintouch").hide();  
$("getintouch2").hide();  
$("getintouch3").hide();  
$("vicarimage").hide();  
$("squaredown2").hide();  
$("squareleft2").hide();  
$("one").hide();  
$("whatis").hide();  
$("squaredown").hide();  
$("whoweare").hide();  
if ($("whoweare:first").is(":hidden"))   
    if ($("squaredown:first").is(":hidden"))   
    if ($("squareleft3:first").is(":hidden")) { 
    if ($("twitter:first").is(":hidden"))  
if ($("squareright:first").is(":hidden"))  
if ($("getintouch:first").is(":hidden"))
if ($("getintouch2:first").is(":hidden")) 
if ($("getintouch3:first").is(":hidden"))
if ($("vicarimage:first").is(":hidden"))
if ($("squaredown2:first").is(":hidden"))
if ($("squareleft2:first").is(":hidden"))
if ($("one:first").is(":hidden"))
if ($("whatis:first").is(":hidden"))
jQuery('getinvolved').fadeIn(); 
jQuery('squareleft').slideToggleWidth();
} else {
$("squareleft").hide();
$("getinvolved").hide();
} } );
</script>

干杯。

4

2 回答 2

1

$("getintouch2").hide();您指的是所有课程或ID吗?是getintouch2一堂课?如果是这样,它需要在它前面有一个句点,或者如果它是一个 id,它之前需要一个哈希。像这样:$(".getintouch2").hide();对于班级,或者$("#getintouch2").hide();如果它是一个ID。

我认为使用hover而不是mouseover你想要的更多,然后我认为你的 if 语句有点混乱,如果使用多个 if,你需要在它们之间放置 && 以将它们链接成一个,我可能说错了,但我会阅读更多 jquery 教程,因为整个事情有点古怪。祝你好运,我花了一些时间来学习 Jquery、大量的试验和错误,以及大量的 Stack Overflow 问题。

如果您使用较小的代码,人们通常会帮助您编写代码,尤其是如果您在http://www.jsfiddle.com上有一个您正在尝试做的小示例,那么 帮助人们会更快更容易当他们使用 Jsfiddle 时。所以我会把你的代码分解成一个小例子,并尝试一次解决一个问题,如果你有一个if声明不起作用,其他也不起作用,但是您发布的代码太多,以至于大多数人可能会不知所措,否则如果您将其发布到 jsfiddle 或者如果您将其做得更小,他们会用正确的代码回答您。因此,一次解决一个问题,堆栈溢出是天赐之物,请记住,我在这里学到了很多东西,得到了很多帮助,人们花了很多时间来帮助他人,这几乎是鼓舞人心的......让我也想帮助别人。

哦,hoverIntent 是我经常使用的一个很棒的插件,它使得如果人们在屏幕上移动他们的鼠标,也许从屏幕底部到导航,它不会激活所有的鼠标悬停/悬停效果,他们必须将鼠标放慢到一定的速度才能产生效果,这是完美的。

于 2011-07-08T23:47:00.867 回答
1

获取 hoverIntent的副本。

将其链接到您所在的HEAD地区。

而不是mouseOver(),使用hoverIntent()

有多种附加选项可以调整时序阈值(请参阅文档)。

正如其他人指出的那样,您的代码到处都是。但是 hoverIntent 确实解决了时间问题。

于 2010-05-13T01:09:10.403 回答