Вопрос

Scroll.js используется для блока #bird, который следует за прокруткой страницы.

Основная проблема - это работает, если я удалю строку Doctype, эту:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

и это не работает, если включен doctype.

Вот html-код:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
    <script src="jquery.js" type="text/javascript"></script>
    <script src="scroll.js" type="text/javascript"></script>
</head>

<body>
<div style="position:relative; height:20000px">
    <div id="bird" style="position:absolute;left:0;top:20px;width:200px"></div>     
</div>
</body>
</html>

И js:

Удалено

Не просите удалить тип документа, его необходим.

Это было полезно?

Решение

Вам нужно заменить это:

document.body.scrollTop

с этим:

document.documentElement.scrollTop

scrollTop принадлежит к <html> элемент в режиме стандартов, а не <body> элемент.

(Обратите внимание, что document.body.scrollTop появляется в вашем коде три раза.)

Другие советы

есть одна проблема с вашим bird div, стиль имел ширину: 200 ", должен быть width: 200px" (добавьте единицы измерения)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top