0

这是一个奇怪的东西——在 IE 中效果很好,但在 Safari 中却不行。这是我的代码:

<script type="text/javascript">
 $(document).ready(function(){
 $('body').css('display', 'block');
 });</script>

</head>
<body style="margin:0; display:none;">

目标是在文档准备好之前将正文显示设置为无。然后将显示属性更改为阻止。

知道我在这里做错了什么吗?

4

2 回答 2

2

我可以添加某种条件代码,这样如果 javascript 未启用它会立即加载,但如果启用它会等待显示,直到文档准备好?

是的你可以:

<script type="text/javascript">
 $(function(){
   $('body').css('display', 'block');
 });
</script>
</head>
<body>
<script type="text/javascript">
  $('body').css('display','none'); // this will execute before $(document).ready()
</script>
于 2011-10-16T19:30:32.220 回答
1

如果您希望页面在显示之前真正准备好(也加载了图像),则应该使用 jQuery 的 .load() 。另一方面,你根本不应该用 css 隐藏正文,因为关闭 javascript 的人会认为网站刚刚崩溃。当然,除非您正在创建一个 100% 依赖于 javascript 的应用程序。

于 2011-10-15T11:52:21.153 回答