这是问题;我有一个'加载'图像 - 它只是标准的spinner.gif动画,通常用于表示幕后发生的事情。这是代码:
$(document).ready(function() {
var spinner = $('<img />').attr('src', '/media/images/icons/spinner.gif');
var loadingText = $('<span id="loader">Loading...</span>').prepend(spinner);
$(loadingText).appendTo('#messages');
[... other jquery code here ...]
完成其他功能后,以下内容将删除加载图像和文本:
$(loadingText).remove();
问题在于,无论何时单击浏览器中的“刷新”,加载文本都会再次显示,但图像不会显示。只有在关闭选项卡或窗口并重新打开页面时,图像才会正确显示加载文本。我很难过,有什么想法吗? (提前谢谢)
答案 0 :(得分:1)
在Chrome,Firefox和Opera中似乎对我工作正常(对不起在Mac上,所以没有IE)。你在多个浏览器中尝试过吗?
我正在做:
<html>
<body>
<div id="messages">
</div>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
jQuery(document).ready(function($) {
// use some random spinner from the internet
var spinner = $('<img />').attr('src', 'http://www.enilivewec.com/img/ajax-loading.gif');
var loadingText = $('<span id="loader">Loading...</span>').prepend(spinner);
// add to #messages div block
$(loadingText).appendTo('#messages');
// do some animations to delay it a bit then remove it
$('#messages').slideUp(500).slideDown(1000).fadeOut(500).fadeIn(1000, function () {
$(loadingText).remove();
});
})
</script>
</body>
编辑 OP声明using window load已更正问题,因为它等待所有图片加载后再启动jQuery代码。