Как работает $('html'). Animate() работает только в IE и $('body'). Animate() необходим для Chrome/Safari?

Мне нужно использовать $('html, body').animate(), чтобы сделать фрагмент полностью совместимым с кросс-браузером, но это неудобно при анимации анимации, поскольку они будут иногда действовать как на <html>, так и на <body>.

IE8 зависит от наличия "html", в то время как Chrome или Safari зависят от наличия "body", поэтому я должен включить оба.

Почему расхождение?

Ответ 1

Я думаю, потому что полосы прокрутки (которые, как я полагаю, вы анимируете) встроены в браузер в разных местах. Раньше у меня была эта проблема, и мне пришлось использовать тот же метод, который вы включили. Бит раздражает, но тогда это самое главное, когда вы хотите, чтобы они работали во всех браузерах: -)

Ответ 2

Вы никогда не должны делать $('html').animate, так как вы должны только анимировать контент, а тег html не является тегом содержимого. Stick с $('body').animate, и он должен работать во всех браузерах.