Что такое ненавязчивый Javascript с точки зрения непрофессионала? - PullRequest
53 голосов
/ 18 декабря 2010

Что такое ненавязчивый Javascript с точки зрения непрофессионала? Пример был бы хорош, чтобы помочь моему пониманию.

1 Ответ

76 голосов
/ 18 декабря 2010

Оформить заказ на статью в Википедии:

«Ненавязчивый JavaScript» является общим подход к использованию JavaScript в интернет страницы. Хотя термин не формально определены, его основные принципы как правило, включают:

  • Отделение функциональности («уровня поведения») от веб-страницы структура / содержание и представление
  • Лучшие практики, позволяющие избежать проблем традиционного JavaScript программирование (например, браузер несоответствия и отсутствие масштабируемость)
  • Прогрессивное улучшение для поддержки пользовательских агентов, которые могут не поддержка расширенного JavaScript Функциональность [2]

Так что это в основном отделяет поведение или javascript от представления или html.

Пример:

<input type="button" id="btn" onclick="alert('Test')" />

Это не ненавязчивый javascript, потому что поведение и представление смешаны. onclick не должно быть в html и должно быть частью самого javascript, а не html.

С приведенным выше примером, вы можете пойти ненавязчиво, как это:

<input type="button" id="btn" />

JavaScript:

var el = document.getElementById('btn');
el.onclick = function(){
  alert('Test');
};

Тогда мы отделили javascript от html очень простым примером.

Примечание:

В ненавязчивом javascript есть еще что-то, о чем можно узнать из статьи в Википедии.

...