所以我偶然发现了编写网站的这个小部分的方法,但它有点小错误。我知道jquery足够危险,但我希望有人能帮助我做到更好,更高效。关于mouseenter的jQuery动画问题
这是我觉得可以改善这一点,但我不知道如何完成这些:
- 滚过的第一个城市后,移动到下一个时, 不应该带回所有其他标记,然后重新隐藏它们。它 应该只是隐藏你所在的标记,然后显示当前已经结束的那个标记,但是鼠标移出并且延迟它将所有标记带回去。
- 目前,如果你从一个侧翻转到有点 快速的步伐在未来,动画似乎假发出
- 这是奖金,但我原本可视化的标记会 动画在一个递增的顺序,而不是所有在同一时间。 可能是随机的或者它可能被定义。我认为这将使 动画看起来更加流畅。我认为这将需要循环 ,但正如我前面提到的,我只知道危险。
这里是链接到页面:http://204.12.117.109/~sandbox/map/
下面是我使用jQuery代码:
$(function() {
$('.city').mouseenter(function(){
var relid = $(this).attr('rel');
$("#communities div[id!=" + relid + "].pin").animate({
opacity: 0,
top: '-=40',
}, 500);
});
$('.city').mouseleave(function(){
var relid = $(this).attr('rel');
$("#communities div[id!=" + relid + "].pin").animate({
opacity: 1,
top: '+=40',
}, 500, 'easeOutBounce');
});
});
这里的我使用的CSS:
#communities { background: url(images/bgCommunities.gif) scroll bottom right no-repeat; position: relative; }
#communities .lists { width: 340px !important; }
#cities li { width: 160px !important; margin: 0px 2px !important; padding: 4px 0 4px 4px; }
#cities li:hover { background-color: rgb(240,240,240); }
#boyle, #long, #santa, #rich, #fres, #sac, #city, #sLA, #coach, #kern, #oak, #merc, #sal, #del { position: absolute; width: 8px; height: 12px; background: url(images/pin.png) 0 0 no-repeat; }
#boyle { top: 230px; right: 95px; }
#long { top: 241px; right: 92px; }
#santa { top: 236px; right: 84px; }
#rich { top: 139px; right: 165px; }
#fres { top: 173px; right: 121px; }
#sac { top: 133px; right: 147px; }
#city { top: 258px; right: 78px; }
#sLA { top: 235px; right: 90px; }
#coach { top: 239px; right: 62px; }
#kern { top: 206px; right: 105px; }
#oak { top: 148px; right: 162px; }
#merc { top: 161px; right: 136px; }
#sal { top: 171px; right: 155px; }
#del { top: 71px; right: 185px; }
以下是我正在使用的HTML:
<div id="communities">
<div class="lists">
<ul id="cities">
<li class="city" rel="boyle"><a href="#">Boyle Heights</a></li>
<li class="city" rel="long"><a href="#">Long Beach</a></li>
<li class="city" rel="santa"><a href="#">Central Santa Ana</a></li>
<li class="city" rel="rich"><a href="#">Richmond</a></li>
<li class="city" rel="fres"><a href="#">Central/SE/SW Fresno</a></li>
<li class="city" rel="sac"><a href="#">Sacramento</a></li>
<li class="city" rel="city"><a href="#">City Heights</a></li>
<li class="city" rel="sLA"><a href="#">South Los Angeles</a></li>
<li class="city" rel="coach"><a href="#" >Coachella Valley</a></li>
<li class="city" rel="kern"><a href="#">South Kern</a></li>
<li class="city" rel="oak"><a href="#">East Oakland</a></li>
<li class="city" rel="merc"><a href="#">SW Merced/East Merced</a></li>
<li class="city" rel="sal"><a href="#">East Salinas (Alisal)</a></li>
<li class="city" rel="del"><a href="#">Del Norte County</a></li>
</ul>
</div>
<div class="pin" id="boyle"></div>
<div class="pin" id="long"></div>
<div class="pin" id="santa"></div>
<div class="pin" id="rich"></div>
<div class="pin" id="fres"></div>
<div class="pin" id="sac"></div>
<div class="pin" id="city"></div>
<div class="pin" id="sLA"></div>
<div class="pin" id="coach"></div>
<div class="pin" id="kern"></div>
<div class="pin" id="oak"></div>
<div class="pin" id="merc"></div>
<div class="pin" id="sal"></div>
<div class="pin" id="del"></div>
请重命名你的标题“我该如何解决我的越野车代码?'所以他人更容易理解你的问题。你的头衔现在太笼统了。也可以尝试让你的CSS和HTML更简单,以便更容易浏览。 – ksindi
嘿Tuva,我很抱歉,我不知道如何在不破坏功能的情况下让CSS和HTML更简单。我不知道你是否看到我的链接,但如果你没有看到代码在行动将清除问题:[链接](http://204.12.117.109/~sandbox/map/) – Johnny5