悬停时 jQuery 淡入/淡出会导致窗口弹跳
刚刚开始使用淡入/淡出 - 它可以正常工作,但有问题。我有一组包含链接的 div(即“#linki”)。每个“链接”div 的 id 都是有针对性的,因此在链接文本上悬停开/关会导致第二组堆叠 div(即“#webshoti”)中的图像/文本经历淡入 + 淡出响应。所以基本上我的页面代码包含一组 10 个 #link div(在“linkWrapper”div 内)、10 个 #webshot div(全部在“webshots”div 内占据相同位置)和 10 个 jQuery 脚本实例:
例如 html for #链接 div:
<div class="linkList1"><a href="http://www.fmc.gov.au/">Federal Magistrates Court</a></div>
例如 #webshot div:
#webshot1{
position:absolute;
right:30px;
width:500px;
height:322px;
display:none;
例如 jQuery 脚本:(
$(function(){
$('.linkList1').mouseenter(
function(){
$('#webshotText').fadeOut(200, function(){
$('#webshot1').fadeIn(450);
});
}
);
$('.linkList1').mouseleave(
function(){
$('#webshot1').fadeOut(20);
}
);
});
请注意,#webshotText 在页面加载时显示,直到任何 #link div 悬停)
可以查看此网页 此处
问题: (1.) 将鼠标悬停在“链接”div 列表中会导致窗口跳转(嘿,看 - 这是 jQuery Bounce!Doh)。 (2.) 在某些情况下,当前悬停的 #link 所针对的 #webshot 中的图像似乎正在加载,而先前定位的 #webshot 图像仍在卸载,导致传入图像(暂时)堆叠在传出图像的底部边缘下方。
我尝试将 mouseout>fadeout 设置为较短的时间(200 毫秒),但没有任何变化。我已经在代码中应用了 jQuery 图像预加载器,但没有任何变化。发生在 windows/FF4 和 IE8
有什么建议吗?非常感谢,柯克 (** 如果有任何方法可以使用数组脚本来避免需要 10 个 jQuery 脚本实例,那就加分了!)
Just started using fadein/fadeout - it's functioning but with problems. I have a set of div's containing links (ie '#linki'). The id of each 'link' div is targetted so that hover on/off on the link text causes images/text in a second set of stacked div's (ie '#webshoti') to undergo fadein + fadeout response. So basically my page code holds a set of 10 #link div's (inside 'linkWrapper' div), 10 #webshot div's (all occupying the same position inside 'webshots' div) and 10 instances of the jQuery script:
eg of html for #link div:
<div class="linkList1"><a href="http://www.fmc.gov.au/">Federal Magistrates Court</a></div>
eg of #webshot div:
#webshot1{
position:absolute;
right:30px;
width:500px;
height:322px;
display:none;
eg of jQuery script:
$(function(){
$('.linkList1').mouseenter(
function(){
$('#webshotText').fadeOut(200, function(){
$('#webshot1').fadeIn(450);
});
}
);
$('.linkList1').mouseleave(
function(){
$('#webshot1').fadeOut(20);
}
);
});
(note that #webshotText is displayed on page load, until any of the #link div's are hovered)
This web page can be viewed HERE
The problem:
(1.) hovering down the list of 'link' divs causes window to jump (hey look - it's jQuery Bounce! Doh).
(2.) in some cases the image in #webshot which is targetted by currently hovered #link appears to load while the previously targetted #webshot image is still unloading, causing incoming image to be (momentarily) stacked under bottom edge of outgoing image.
I tried setting the mouseout>fadeout to a short time (was 200ms) but no change. I've applied a jQuery image preloader in code but no change. Happens in windows/FF4 and IE8
Any suggestions? Thanks heaps, Kirk
(** bonus points if there's any way I could employ array scripting to avoid need for 10 instances of jQuery script!)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这个小提琴(制作于回答这个问题)可以帮助:
这个想法是:
希望这有帮助。
This fiddle (made to answer this question) can help:
The idea is to:
Hope this helps.