@newaitix: ну так подход к навешиванию обработчика на document актуален везде, и неважно — используется ли jQuery, или это — нативный JS.
Хотя да — вы правы, без знаний языка, его работы с DOM, а также ряда WebAPI тяжело прогрессировать.
@newaitix: зачем вам пытаться решать задачи без jQuery, если он значительно облегчает жизнь?
Вот то же самое на чистом JS jsfiddle.net/petroveg/r0teyn1e/1
Я умею так писать, но не пишу, потому считаю потерей времени. А вам это зачем?
@newaitix: в большинстве случаев не нужно вешать на элемент обработчики — событие всплывает до window и лучше ловить его там.
Так же и стиль — я могу динамически создать стиль под его селектор.
И всё это можно делать до наступления DOMContentLoaded.
@butteff: боюсь, топ-менеджер Газпрома и не сможет ничего перевезти — всё сломает или потеряет. Хотя нет — что-то украсть по пути сможет.
Связь вёрстки с фронтендом крайне высока и порой невозможно отделить одно от другого. Высокая зарплата фронтенда по сравнению с верстальщиком связана именно с тем, что он помимо вёрстки ещё и программирует.
@bromzh: как могут быть связаны анимация и события? Правильный ответ — наличием/отсутствием класса. И что — jQuery не справляется с этой задачей?))
Единственное место для применения библиотек в качестве источника анимации — применение canvas.
Поскольку в Javascript до недавнего времени приватных свойств отродясь не было, то и в геттерах смысла не было никакого. Так что привычки такой нет и не помогу в этом.
Но вот ввели в 1.8 геттеры и сеттеры, добавили создание свойств с указанием приватности, неизменяемости и т.д. Пока приватность фурычит только в режиме use strict, да и тяжкое наследие IE8 нет-нет, да и пробьётся, так что привычки стойкой и не появляется.
Думаю, использование геттеров и сеттеров может войти в привычку, однако на данный момент паттерн «Модуль» решает вопрос с приватностью.
Вы абсолютно правильно считаете, но зачастую приходится использовать динамическое присвоение инлайн-стилей в JS. В вопросе речь идёт об изменении стиля. А коррекции вполне допустимы.
@vasIvas: там речь о встроенных геттерах и сеттерах. Тех самых, что вы привыкли писать. Вот кусок кода:
var o = {
a: 20,
get b() {
return this.a + 1;
},
set c(x) {
this.a = x / 2;
}
};
o.c = 10; // Вызывает сеттер, который присваивает 10 / 2 свойству a
console.log(o.b); // Вызывает геттер, который возвращает a + 1 (6)
Видите, как нативные вызываются?
А писать функцию-геттер для конкретного свойства, чтобы обратиться к x.a, или универсальную функцию, чтобы найти x['a'] — какая разница? Только лишь вопрос привычки — иметь их много, или только пару.
@deadbyelpy да вы их и сами делаете. Или в jQuery вы не пользуетесь ни css(), ни animate() и вообще ничем-ничем?
И потом, необязательно работать с инлайн-стилями, когда есть коллекция Stylesheets со своими интерфейсами.