ユーザーがAJAX呼び出しの結果にカーソルを合わせたときに、その結果をdivに表示したいと思います(つまり、divの内容をAJAX呼び出しの結果に置き換えます)。基本的な機能は、ページ上のドットを、ユーザーがドットにカーソルを合わせたときにサーバーからのコンテンツを含む円に置き換え、ユーザーがカーソルを合わせなくなったときに再びドットを表示することです。ページ上に多くのドットがあり、それぞれがホバー時に異なる円の内容を持っている場合があります。
私はそれを機能させていますが、ユーザーが指定されたdivにカーソルを合わせている間、AJAX呼び出しが繰り返し呼び出されていることに気付きました。繰り返しの呼び出しを防ぐにはどうすればよいですか?
私はさまざまな使用法を試しましたが、まだ正しく機能していません.one
。.unbind('mouseenter', 'mouseleave')
これが私が今持っているものです(ホバー動作はユーザーにとっては正しく機能しますが、バックエンドへの繰り返しの呼び出しを引き起こします)。
<div class="box1" s='<%=value1 %>' t='<%=value2 %>'>
<div id="circle" style="display: none;">
</div>
<div class="dot" id="dot">
<img src="orangeDot.png" />
</div>
</div>
およびスクリプト:
<script type='text/javascript'>
$(document).ready(function () {
$(".box1").hover(function () {
var source = $(this).attr('s');
var target = $(this).attr('t');
$('#dot').attr("style", "display: none;");
$('#circle').hide().load('/GetCircle?s=' + source + '&t=' + target).show();
}, function () {
$('#circle' + divid).attr("style", "display: none;");
$('#dot' + divid).attr("style", "display: inline-block;");
});
});
</script>