Ошибки на веб страницах и как их искать и исправлять. Устраняем ошибку сценария в Windows Ошибки на веб странице

На данный момент существует большое количество различных браузеров, в той или иной степени поддерживающих существующие стандарты HTML. Лично я отдаю предпочтение браузеру от корпорации Mozilla. Этот браузер имеет долгую историю (он написан на основе знаменитого браузера Netscape Navigator). Также этот браузер мне нравится тем, что он поддерживает систему плагинов - отдельно распростаняемых дополнений, при подключении которых можно изменить функциональность и выполнить настройку под свои нужды. И, наконец, этот браузер является свободно распространяемым с открытыми исходными кодами, что также немаловажно. Поэтому я и решил описать возможности, которые данный браузер предоставляет не только пользователю, но и разработчику Web страничек, насколько легким и удобным может быть процесс отладки написанных продуктов.

Mozilla Firefox является одним из самым популярным браузеров среди разработчиков и web-developers. Он привлекает к себе их внимание из-за тех возможностей, которые этот браузер предоставляет для отладки созданных проектов, исправления ошибок, улучшений. В стандартную поставку браузера включается java console (или «консоль ошибок»). Эта утилита позволяет выполнять отладку встроенных сценариев java-script. Но, гораздо большую функциональность браузеру придают сторонние плагины, которые можно скачать и установить с офицального сайта Mozilla Foundation . Сейчас я хочу рассмотреть два из этих плагинов - это Web Developer и Firebug . Оба из этих дополнений могут быть скачены по вышеперечисленным ссылкам с официального сайта дополнений. После их их установки и перезапуске браузера перед разработчиком открываются широкие возможности, которые я опишу ниже, по очереди для каждого из плагинов.

Firebug plugin

Как сказано на официальной страничке: «Firebug интегрируется с браузером Firefox, чтобы замечательно обогатить инструментарий разработчика. Вы сможете редактировать, отлаживать и исследовать CSS, HTML и Javascript «вживую», на любой веб-странице.» И это действительно так. Рассмотрим некоторые из функций данного плагина, а именно:

  • Просмотр и редакция HTML.
  • Построение CSS.
  • Мониторинг сетевых запросов
  • Отладка JavaScript
  • Исследование JavaScript
  • Логирование для JavaScript

Это далеко не полный перечень всех его возможностей. Так проект является открытым (opensource), то любой желающий может изменять и дополнять функциональность.

Для работы с плагином необходимо нажать клавишу F12 (Ctrl-F12 для работы с ним в отдельном окне). После успешного запуска получим следующее - рисунок 1а,1б.

Рисунок 1а. Начальное окно плагина firebug.


Рисунок 1б. Начальное окно плагина firebug.

Далее начинается собственно работа с плагином. Скажем, нам необходимо найти тот или иной объект в HTML-коде, или определить, как именно реализуется с помощью CSS текущий фрагент. Для этого просто необходимо мышкой выбрать необходимые опции в меню окна плагина. В нижеприведенном примере - это HTML в режиме Inspect. Теперь, перейдя на страницу документа, под курсором мыши мы заметим прямоугольную область, иллюстрирующую тут участок, с которм ведется работа. В окне плагина мы увидим те параметры HTML и CSS которые используются. Также, нажав на каждый из них, можно производит изменения и отслеживать их в динамике. Описанные действия проиллюстрированы на рисунках 2,3,4.



Разработке данного проекта вышеописанные плагин был использован именно для этих целей. Однако, хотя здесь и не был использован java-script, плагин firebug может быть использован также для его отладки. Пример отладки изображен на рисунке 5.


На этом, как было описано выше, функциональность данного расширения, не ограничивается. Изучить его полностью и использовать в своих нуждах можно, загрузив по приведенным ссылках, предварительно установив Mozilla Firefox.

Web Developer plugin Web Developer - второе расширение для браузера Mozilla Firefox, очень мощное и функциональное, которое позволяет производить быструю и эффективную отладку. После его установки в окне браузера появится дополнительная панель с инструментами, изображенная на рисунке 6.

Дальнейшая работа с плагином интуитивно понятна. К примеру, если нам необходимо выполнить работу с CSS (хотя не так полнофункционально, как с плагином Firebug), то можно щелкнуть меню CSS и заблокировать, включить или выключить.

Очень удобным для разработчика является возмоность просмотреть, как будет выглядить его проект на мониторах, с разным разрешением. Для этого необходимо использовать вкладку Resize. Здесь можно вручную задать необходимые разрешения экрана (800x600, 1024x768 и т.п.), а затем свободно переключаться между ними, приближать или удалять содержание. Данная функциональная возможность изображена на рисунке 7.

Данное расширение также обладает богатыми функциональными возможностями, которые все описаны и доступны на официальных сайтах.

Перечень использованных источников
  • 1. www.getfirebug.com
    Официальный сайт дополнения.
  • 2. http://addons.mozilla.org
    Официальный сайт компании Mozilla, где размещается плагины для браузера Firefox, информация для разработчиков, информация по использованию плагинов.
  • 3. http://chrispederick.com/work/web-developer/
    Официальный сайт разработчика плагина WebDeveloper.

Написать HTML - здорово, но как понять, где ошибка, когда что-то не работает? В этой статье описаны несколько инструментов, которые помогают искать и исправлять ошибки в HTML.

Отладка - это не страшно

Во время написания какого-нибудь кода, обычно все идет хорошо, пока не появляется тот момент, когда вы совершаете ошибку. Итак, ваш код не работает, или работает не так, как вы задумывали. Если вы попытаетесь скомпилировать неработающую программу на языке Rust , компилятор укажет на ошибку:

В данном случае, сообщение об ошибке понять относительно просто - "unterminated double quote string". Если вы внимательно посмотрите на println!(Hello, world!"); , то заметите, что здесь отсутсвует двойная кавычка. Разумеется, сообщения об ошибках могут становиться куда более сложными для понимания по мере роста вашего кода, и даже самые простые случаи могут показаться пугающими для тех, кто ничего не знает о Rust.

Но не бойтесь отладки! Чтобы комфортно писать и отлаживать любой код, нужно понимать язык и его инструменты.

HTML и отладка

HTML не так сложен к пониманию, как Rust. HTML не компилируется в какую-либо другую форму перед тем, как браузер проанализирует это и покажет результат (он является интерпретируемым , а не компилируемым ). Синтаксис HTML элементов намного понятнее, чем у "настоящих языков программирования", таких как Rust, JavaScript , или Python . Способ, которым браузеры читают HTML более толерантен , чем у языков программирования, интерпретирующих свой код строже. Это одновременно и плохо, и хорошо.

Толерантный код

Так что же означает толерантный? В общих чертах, когда вы напортачили в коде, есть два типа ошибок, с которыми вы столкнетесь:

  • Синтаксические ошибки (Syntax errors) : Это ошибки в правильности написания, как это было выше, в примере с Rust. Такие обычно легко исправлять, в той мере, в какой вы знакомы с синтаксисом языка и знаете, что означают сообщения об ошибках.
  • Логические ошибки (Logic errors) : Это ошибки, появляющиеся в том случае, если синтаксис корректен, но код не выполняет своего предназначения, то есть программа выполняется неверно. Такие исправлять сложнее, чем синтаксические, поскольку не выводится сообщений, указывающих место, где вы ошиблись.

HTML не страдает от синтаксических ошибок, потому что браузер читает код толерантно, в том смысле, что страницы могут отображаться даже если синтаксические ошибки присутсвуют. Браузеры имеют встроенные правила по интерпретации неверно написанной разметки, и вы можете запустить что-либо, даже если вы имели в виду другое. Это может стать настоящей проблемой!

На заметку : HTML читается толерантно, потому что когда веб только появился, было решено позволить людям публиковать контент даже при условии некорректностей в коде, так как это куда более важно, чем уверенность в абсолютно верном синтаксисе. Веб не был бы сейчас так популярен, если бы относился к новичкам строго.

Активное обучение: Знакомство с толерантным кодом

Время изучить природу толерантного кода в HTML.

  • Для начала, скачайте наш пример отладки и сохраните локально. Эта демонстрация намеренно написана с ошибками, которые нам предстоит обнаружить.
  • Далее, откройте её в браузере. Вы увидите нечто вроде этого:
  • Сейчас документ выглядит не особо хорошо; Давайте посмотрим в код и выясним почему (Показано только тело документа): HTML debugging examples

    What causes errors in HTML?

    • Unclosed elements: If an element is not closed properly, then its effect can spread to areas you didn"t intend
    • Badly nested elements: Nesting elements properly is also very important for code behaving correctly. strong strong emphasised? what is this?
    • Unclosed attributes: Another common source of HTML problems. Let"s look at an example: не закрыт, и сообщение указывает прямо на открывающий тег.
    • "End tag strong violates nesting rules": Элемент неправильно вложен - на этом уровне нет парного открывающего тега.
    • "End of file reached when inside an attribute value. Ignoring tag": Загадочное сообщение. Дело в том, что где-то (скорее всего, в конце документа) неправильно прописано свойство элемента, и конец файла оказался внутри этого свойства. В браузере не видно ссылки - скорее всего, проблема рядом с ней.
    • "End of file seen and there were open elements": Файл закончился, но некоторые элементы не закрыты. Сообщение указывает на конец файла, в данном случае не закрыт элемент example:
  • Поделиться