Эквивалент
$('body').css('display','none');
есть
document.body.style.display = 'none';
$('body')
выбирает элемент body
, но document.body.parentNode
явно выбирает родителя body
.
И не должно быть просто
$('body').fadeIn(3000);
Я спросил, потому что я предположил, что вы уже получили код, работающий только с jQuery. Но, видимо, у вас нет, так что опять-таки, это должно быть только $('body').fadeIn(3000);
, иначе вы сразу сделаете элемент видимым, и больше нечего оживлять.
См. Демонстрацию: http://jsfiddle.net/fkling/Q24pC/1/
Обновление:
$(window).load
срабатывает только при загрузке всех ресурсов. Это может занять больше времени, если у вас есть изображения. Чтобы скрыть элементы ранее, вы должны прослушать событие ready
:
$(document).ready(function() {
// still don't know why you don't want to use jQuery.
document.body.style.display = 'none';
});
или скрыть элементы изначально с помощью CSS
body {
display: none;
}
Чтобы пользователи с отключенным JavaScript могли видеть страницу, вам нужно добавить
<noscript>
<style>
body {
display: block;
}
</style>
</noscript>
в head
после других стилей CSS.
Обновление 2
Кажется, что установка свойства CSS напрямую вызывает проблемы в некоторых браузерах. Но использование $('body').hide()
похоже работает: http://jsfiddle.net/fkling/JaLZU/