[英]Alert appears too early
這是我在JavaScript中的代碼:
$("#bot1Selected").attr("card-value", botPick.value + botPick.suit.substring(0, 1));
$("#bot1Selected").css("background-image", "url('images/cards/" + checkValue(botPick.value) + botPick.suit.substring(0, 1) + ".png')");
$("#player1Selected").attr("card-value", playerDisplay);
$("#player1Selected").css("background-image", "url('images/cards/" + checkValue(playerDisplay.slice(0, -1)) + playerDisplay[playerDisplay.length - 1] + ".png')");
if (playerVal.value > botPick.value) {
//sleep(500);
alert("Your Card is Higher");
} else {
//sleep(500);
alert("Bot's Card is Higher");
}
if (playerVal.value > botPick.value) {
endTurn(playerDiscard, [playerVal, botPick]);
} else {
endTurn(bot1Discard, [playerVal, botPick]);
}
$("#playerDiscard").text(playerDiscard.length);
$("#playerDraw").text(player.length);
為什么在我的圖像反映在頁面上之前會發生警報?
jQuery.css()
函數是異步的。 它會立即返回,因此加載圖像時不會返回。
創建一個“虛擬”圖像以預加載它,並使用onload
事件來確定何時加載該圖像。
jQuery(document).ready(function() {
var imgUrl = "https://via.placeholder.com/350x150";
var $img = $("<img />");
$img.on("load", function() {
$("#yourImage").css("background-image", "url("+ imgUrl +")");
alert("image is loaded");
});
$img.attr("src", imgUrl);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.