jquery
  • image
  • window.location
  • 2012-06-14 31 views 0 likes 
    0

    这是我的代码:jQuery的时候window.location的设置取消图像加载

    if(resp.status > 0) 
    { 
        $('#download-stuff').html('<img src="/public/images/tick.png" alt="Ready" /> Your download should start shortly'); 
        window.location = 'http://site.com/download.php/' + fileID + '/' + resp.ticket; 
    } else { 
        alert("you have downloaded too much"); 
    } 
    

    的问题是,当我改变download-stuff div的HTML,图像tick.png不会出现。经过一些调试之后,看起来window.location调用使得浏览器取消了任何待处理的请求,例如打勾图标的请求,所以它不会出现在页面上。

    有没有办法解决这个问题,它不涉及在页面上预载图像?

    谢谢。

    回答

    1

    保持简单:只需在开始时出现在图像却隐藏:

    <div id="download-stuff" style="display:none"> 
        <img id="downloadTick" src="/public/images/tick.png" alt="Ready"/> 
        Your download should start shortly 
    </div> 
    
    在jQuery代码

    然后显示图像仅在下载即将开始:

    if(resp.status > 0) 
    { 
        $('#download-stuff').show(); 
        window.location = 'http://site.com/download.php/' + fileID + '/' + resp.ticket; 
    } else { 
        alert("you have downloaded too much"); 
    } 
    
    相关问题