var input = ....queryselector bla bla
if (input) {
// вроде норм, можно работать с элементом
}
try {
var input = ....queryselector bla bla
input.addEventListener()
} catch (err) {
console.error(err);
}
<p>
<div></div>
</p>
<p></p>
<div></div>
<p></p>
Новый порядок важности
Вот как распределяются источники значений CSS-свойств по приоритетности на сегодня (чем выше — тем приоритетнее):
- Стили, установленные переходами (CSS Transitions)
- Браузерные стили с !important
- Пользовательские стили с !important
- Стили с !important из атрибута style Перекрывающие стили (что бы это ни значило) с !important
- Обычные стили с !important (включая инлайновые, у которых наивысшая специфичность)
- Стили, установленные анимациями (CSS Keyframe Animations)
- Стили без !important из атрибута style Перекрывающие стили без !important
- Обычные стили без !important (включая инлайновые)
- Пользовательские стили без !important
- Браузерные стили без !important
Пользуйтесь =)