イベントが積み重なる問題があります。私は大きなアイコンの行列を持っています。マウスオーバーすると、そのうちの1つがテキストボックスが滑り落ちます。最初の試みではすべてが素晴らしいですが、同じオブジェクト(イベントの衝突が発生した場合)でマウスオーバーしてもう一度マウスを動かすと、ボックスが下にスライドしているか、まったく表示されず、矢印ポインタが消えてしまいます。私がマウスオーバーすると、より多くのアラートが表示されます(3マウスオーバー= 3アラート)。ここでjQuery複数のイベントが同時に発生しています
は私のhtmlです:ここでは
<div class="app">
<a href="#appinfo-1"><img src="images/app001.png" alt="" /></a>
<div class="apparrow"></div>
<div id="appinfo-1" class="appbody">
<div><img src="images/apptop.png" alt="" /></div>
<div class="appwrapper">
<div class="leftappborder"></div>
<div class="appcontent">
<h1>Web Based Administration (CMS)</h1>
<p class="apptext">Lorem ipsum dolor sit amet. </p>
<p class="incltick">Included</p>
</div>
<div class="rightappborder"><!-- --></div>
</div>
<div><img src="images/appbottom.png" alt="" /></div>
</div>
</div>
は私のjQueryのです:
$(function(){
$(".app > a").mouseover(function() {
//some code deleted here
var currentactive = $(this).attr("href");
// activate|deactivate infoblock
$(currentactive).parent(".app").hover(
function() {
$(currentactive).queue(function() {
$(this).siblings(".apparrow").slideToggle(150);
$(this).css({"visibility":"visible"}).slideToggle(800, incltick);
$(this).dequeue();
});
},
function() {
$(currentactive).queue(function() {
$(this).css({"visibility":"hidden"}).slideToggle(800, incltick);
$(this).siblings(".apparrow").slideToggle(150);
$(this).parent(".app").animate({marginBottom:0 +"px"}, 800, defaultState);
$(this).dequeue();
});
}
);
}
});
});
関連性の低いコードをすべて削除してください。 – cambraca