Сайты - по стандартам, но не стандартные сайты!
неплохой ресурс
Нет на форуме
По верстке ничего нового\интересного.
Нет на форуме
Правда хороший сайт. Меня очень выручила подборка FAQ по Javascript http://tigir.com/javascript.htm
Нет на форуме
Много полезной информации для новичков, но есть и ошибки (например, в скриптах эти ошибки могут сыграть с теми же новичками дурную шутку). Думаю, что человек, взявшийся за обучение других, должен быть ну чуть-чуть повнимательнее...
Нет на форуме
А что за ошибки то?
Нет на форуме
inc
По большому счету это скорее не ошибки, а описки из-за невнимательности, но с другой стороны - программирование не может допустить подобных вещей.
Вот пример:
function getBodyScrollTop() { return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop); }
Нам нужно, чтобы функция вернула численное значение. Для чего тогда нужно указывать, к примеру, значение document.documentElement, которое вернет [object]?
Вообще, я не хотел бы искать чужие ошибки - неблагодарное это дело, авторы, как правило, обижаются, вместо того, чтобы сказать спасибо.
Нет на форуме
AKS
:-)
я конечно не гуру в javascript, но вы совсем не понимаете как работает код и наговариваете абсолютно зря.
Если убрать document.documentElement, а оставить только document.documentElement.scrollTop, то при отсутствии объекта documentElement произойдет ошибка из-за обращения к свойству не существующего объекта и выполнение функции прекратится и может ещё и сообщение об ошибке вылезти при соответствующих настройках браузера. Т.е. код верен и проверяет вначале наличие объекта, а лишь потом обращается к его свойству.
А второе. С чего вы взяли что функция может вернуть object? Вы я вижу не знаете как работают операторы && и ||
Зря вы беретесь за то, в чем не разбираетесь и наговариваете на автора.
Отредактированно inc (09.02.2010 13:33)
Нет на форуме
inc
По пункту 2:
Я не сказал, что эта функция вернет object, я сказал, что document.documentElement - это лишнее.
По пункту 1:
function getBodyScrollTop() { return self.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop; }
Произойдет ли ошибка в такой функции?
А вот по поводу указанных Вами операторов хотел бы услышать, как же на самом деле они работают...
Отредактированно AKS (09.02.2010 16:38)
Нет на форуме
AKS
приведу сообщение об ошибке в IE4 (который как это не смешно все ещё используют)
An error has occerred in the script on this page.
'document.documentElement.scrollTop' is not an object
Так, то что вы предложили вызвало ошибку и прервало выполнение скрипта и вызвало появление окна с ошибкой и иконки в левом нижнем углу сигнализирующей об ошибке. Программирование не может допустить подобных вещей!
А код автора просто вернул пустое значение.
Чувствуете разницу?
А по поводу && и || я просто вас не понял... на счет возврата значения object
Отредактированно inc (09.02.2010 16:27)
Нет на форуме
inc
Что же, я должен извиниться! Дело в том, что я IE4 не видел даже из далека, не то чтобы в нем что-то тестировать...
Но мне очень интересно, почему это так происходит? Ведь игнорируется же IE4 незнакомый self.pageYOffset, почему этого не происходит с document.documentElement.scrollTop?
Отредактированно AKS (09.02.2010 16:32)
Нет на форуме
:-)
self всегда эквивалентен window
self.pageYOffset тоже самое что и window.pageYOffset
Нет на форуме
inc
Тогда вот так, что-ли (страхуясь от IE4):
function getBodyScrollTop() { return self.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop; }
Нет на форуме
AKS
Послушайте AKS, проверка на наличие объекта с вашей точки зрения это ошибка. Ну это ваше дело.
Вы уверены что во всех браузерах есть объекты document.body и document.documentElement? Уверены. Нет не уверены. Так если нет уверенности то нужно делать проверку.
объекты window и document есть в любом браузере с поддержкой javascript, поэтому код с проверкой никогда не вызовет ошибку.
Отредактированно inc (09.02.2010 19:25)
Нет на форуме
а на счет вашего кода с изменением мест document.body.scrollTop и document.documentElement.scrollTop.
А если document.body.scrollTop равен нулю, то выполнится код document.documentElement.scrollTop и произойдет ошибка. Не правда ли?
Нет на форуме
inc
Чем же на самом деле я Вас так расстроил? Ведь я написал, что это не ошибки, а описки. Ведь я извинился, объяснив, что ошибся сам (ну нет у меня IE4!). И я, всего-навсего, хотел продолжить диалог в более-менее конструктивном ключе...
Нет на форуме
У меня на работе инцедент просто был с утра, человек высказал руководству своё мнение, мол я неверно сделал кое что ( как я растроился :- (. А человек в вопросе недостаточно компетентным однако оказался. Я конечно руководству потом все расписал и выяснилось, что все впорядке. Но нервов мне попортили.
А тут Вы со своими необосноваными наездами на человека.
но есть и ошибки ... эти ошибки могут сыграть с теми же новичками дурную шутку). Думаю, что человек, взявшийся за обучение других, должен быть ну чуть-чуть повнимательнее...
авторы, как правило, обижаются, вместо того, чтобы сказать спасибо.
Нет на форуме
inc
Ну какие-же это "наезды", а? Начал-то я ведь с фразы: "много полезной информации для новичков"! Знал бы, чем все обернётся, то добавил бы: "для меня - в том числе"! Может быть тогда мой первый пост не казался бы таким критичным. Хотя, скорее всего, в любом случае попал бы Вам под горячую руку (даже в прямом общении люди друг друга понимают с трудом, чего уж говорить о форумах).
Нет на форуме
inc
Кстати, я надеюсь, мне тут позволят (вроде бы обещали) выложить свой вариант скрипта на тему XHTML+CSS+DOM слайд-шоу, надеюсь тогда покритикуете объективно...
Нет на форуме
все, мир, дружба
Нет на форуме