0

我有一个带有文本的 div 和一个背景图像。当我加载页面时,文本总是出现在第一个(假设我有低速互联网连接)。如何在文本之前加载背景图像?能否请您在 jquery 和 javascript 中给我解决方案

4

4 回答 4

3

在图像的onload 事件处理程序中添加文本。

注意:如果您想继续使用div带有背景图像而不是标签的img标签,则必须在window.onload事件期间添加文本(有关详细信息,请参阅此答案)。

于 2012-12-17T16:41:11.883 回答
2

假设您的 div 看起来像这样:

<div id="Derp" style="CSS-for-background-image-here">Magical ponies!</div>

我会尝试完全删除文本,然后添加这种 jquery 调用:

<script>
    $(document).ready(function() {
        $('#Derp').load(function() {
            $('#Derp').text("Magical ponies!");
        });
    });
</script>

是这里$('#Derp').load(...)的关键。请参阅 load() 的文档。它有一个你所需要的例子。

于 2012-12-17T16:44:53.993 回答
1

您可以填充内容 onload。

从这个开始:

<div id="content"></div>

然后,在 jquery 中,执行以下操作:

 $(document).ready(function() {
    mybg= new Image(); 
    mybg.onload=function(){
      $('#content').html('YOURTEXTHERE');
    }
    mybg.src = "PATH/TO/IMG";
    });
于 2012-12-17T16:44:03.270 回答
0

您的简单答案是.load当您的窗口完全加载然后出现文本时您可以执行以下操作:

$(function(){
    $(window).load(function() {
        $('p').fadeIn(800);
    });​
});

这是做什么的fading in the p tag with text时候整体window gets loaded

你可以在这里找到一个演示:http: //jsfiddle.net/a5P8b/

于 2012-12-17T16:59:57.400 回答