1

我有以下代码,它应该加载一个带有背景图像的 div,一个封闭的 div 中的一些文本,然后运行一个脚本来询问新文本并插入它而不是旧文本。问题是脚本在图像加载之前运行。脚本完成后,替换发生并显示图像,但这不是我想要的顺序。我已经放入了窗口加载功能,并认为这会适当地延迟事情。也尝试过使用文档加载但同样的问题。我正在使用 Safari。请问有什么帮助吗?

<!DOCTYPE html>
<html>

<head>
<meta charset=utf-8>
<style>
.picture {width:640px; height:480px; background-image:url(/users/me/desktop/sig.jpg);
 background-repeat:no-repeat;
background-position:center}
.words {position:absolute;width:320px; height:240px;padding:20px;border:10px;border-
color:red;border-style:solid;text-align:center; margin-left:140px;margin-top:110px}
</style>
<script src="/users/skronwith/desktop/jquery-1.10.2.min.js"></script>
<script>
$(window).load(function() {

var answer = prompt('what is input', ' ');
$('.words').text(answer); 
});
 </script>
</head>

<body>
<div class ="picture">
<div class ="words">

 this is in the second div  and should be there before the script runs

</div>
</div>

</body>
</html>
4

2 回答 2

0

您可以使用 setTimeout()

尝试这个

$(window).load(function() {
  setTimeout(function(){
    var answer = prompt('what is input', ' ');
    $('.words').text(answer); 
  },1000);
});

或者您可以在 document.ready 中使用它(加载 Dom 时)

$(document).ready(function(){
  var answer = prompt('what is input', ' ');
    $('.words').text(answer);
  });
})

或者您可以尝试在最后添加脚本"</body>"

于 2013-10-28T13:28:44.827 回答
0

在 document.ready() 中使用它

$(document).ready(function(){
  $('.words').text(answer); 
});
于 2013-10-28T13:28:48.063 回答