フーバー時にサーバーからのデータを表示するように要求するポップアップがあります。ただし、複数のポップアップを防ぐことができる唯一の方法は、同期 ajax を使用することでした。同期 ajax は、まったく使用されない場合でもめったに使用されるべきではないことを理解しています。これは非同期で実行できますか? コールバックが必要であることを学んでおり、それらが関連していると感じています。ありがとう
(function( $ ){
$.fn.screenshotPreview = function() {
xOffset = 20;
yOffset = 10;
this.hover(function(e) {
$.ajax({
url: 'getPopup.php',
success: function(data)
{
$("body").append('<div id="screenshot">dl><dt>Name:</dt><dd>'+data.name+'</dd><dt>User Name:</dt><dd>'+data.username+'</dd></dl></div>');
$("#screenshot")
.css("top",(e.pageY - yOffset) + "px")
.css("left",(e.pageX + xOffset) + "px")
.fadeIn("fast");
},
async: false,
dataType: 'json'
});
},
function() {
$("#screenshot").remove();
});
this.mousemove(function(e) {
$("#screenshot").css("top",(e.pageY - yOffset) + "px").css("left",(e.pageX + xOffset) + "px");
});
};
})( jQuery );