JS, or not JS

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite & 1 Event

    JS, or not JS - Presentation Transcript

    1. JS, or not JS, вот в чем вопрос
        • Фитискин Александр
        • веб-технолог
        • студия «Dominion»
    2. Проблемы, связанные с отсутствием версии без JS
      • Недоступны важные функции сервиса
      • Недоступна важная информация
      • Возможности браузера используются
      • неполностью (версия для печати, ссылка другу)‏
      • Сайт индексируется не полностью
    3. Причины отсутствия JS
      • JS отключен специально
      • Проблемы с сервером
      • Файл «недокачан» или случайно удален
      • JS-ошибка
      • Старый браузер
      • Другие причины
    4. Задача от менеджера
      • Нужно реализовать вкладки, которые будут переключаться:
    5. Как это может работать без JS
      • Предлагаем менеджеру варианты:
        • Разбить контент на 2 страницы
        • Разместить все на одной странице в виде подзаголовков с якорями
    6. Первый шаг
      • Реализуем статическую версию (без JS)‏
    7. Второй шаг
      • Реализовываем скрипт, который «подготавливает» контент к реализации вкладок:
        • добавляем недостающие элементы
        • перегруппировываем текущие
        • скрываем лишние
    8. Третий шаг
      • Реализовываем скрипт, который переключает вкладки:
        • ищем активные элементы
        • добавляем обработчики событий
    9. Результат
      • С JavaScript
      • Без JavaScript
    10. Всегда нужно учитывать
      • У любого контента должен быть свой уникальный URL
      • У любого действия всегда должен быть альтернативный обработчик
      • Дополнительные «фишки» базируются на стандартной реализации, но существуют отдельно
    11. Отвыкаем от «плохого»
        • Не нужно писать тонны CSS-кода (и HTML) в JS-скрипте:
        • newElem . style . display = ' block ';
        • newElem . style.borderBottom = ' 1px dashed ';
        • newElem . style . color = ' #ccc ';
        • oldElem . style . display = ' none ';
    12. Привыкаем к «хорошему»
      • Большую часть щепетильной настройки внешнего вида можно вынести в CSS и поручить верстальщику:
        • newElem . className = ' visible ';
        • oldElem . className = ' hidden ';
    13. Загрузи версталу по полной! Чтобы не выискивать все элементы, которые должны изменяться, при подготовке контента, переложи и эту задачу на верстальщика: document . body . className = ' javascript_enabled ';
    14. Как быть с анимацией?
      • Анимация подразумевает постоянное изменение каких-либо CSS свойств, и здесь все классами предусмотреть нельзя.
      Войти с паролем Логин: Пароль:
    15. Решение — есть!
      • CSS может нам помочь, предоставив базовые параметры, к примеру:
        • начальное положение
        • конечное положение
      • Получив эти параметры из CSS мы делаем JS более независимым
    16. Изгоняем HTML из скрипта
      • Выносим новый HTML-кусок в отдельный файл
      • и получаем его с помощью Ajax
      • Находим нужные элементы по:
        • Идентификатору ( id =" headerPlace ")‏
        • Имени класса ( class =" headerPlace ")‏
    17. Результат
      • Прозрачный и понятный скрипт, минимально завязанный на верстку
      • Удобство редактирования HTML и CSS
      • Работоспособность, как с JS так и без JS
    18. Спасибо за внимание
      • Меня можно найти в интернетах:
        • alexfitiskin.ya.ru
        • alexfitiskin.moikrug.ru
        • twitter.com/afitiskin
        • frienfeed.com/afitiskin
        • [email_address]
        • [email_address]

    + Alex FitiskinAlex Fitiskin, 1 month ago

    custom

    296 views, 1 favs, 5 embeds more stats

    Удобный и приятный интерфей more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 296
      • 186 on SlideShare
      • 110 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 0
    Most viewed embeds
    • 60 views on http://404fest.ru
    • 30 views on http://www.noinimod.ru
    • 16 views on http://noinimod.ru
    • 3 views on http://xss.yandex.net
    • 1 views on http://ziik.ru

    more

    All embeds
    • 60 views on http://404fest.ru
    • 30 views on http://www.noinimod.ru
    • 16 views on http://noinimod.ru
    • 3 views on http://xss.yandex.net
    • 1 views on http://ziik.ru

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories

    Groups / Events