Вы должны написать свой код таким образом, чтобы ограничить количество обходов DOM.
Когда вы пишете что-то вроде этого:
$('#my_div').css('background','red');
//some other code
$('#my_div').attr('name','Red Div');
Вы дважды находите #my_div
, что неэффективно.
Вы можете улучшить это, назначив результат селектора (т.е. var x = $('.something')
) и манипулируя переменной x
, или вы можете chain ваш метод вызывает так:
$('#my_div').css('background','red').attr('name','Red Div');
Вы увидите, что приведенный выше код часто используется, потому что вы находите элемент один раз. Метод css()
применяет стиль CSS и возвращает фактический результат $('#my_div')
, поэтому вы можете вызвать другой метод, в данном случае attr()
.
Мой предпочтительный способ обработки повторного использования селекторов - хранить их как переменные и оборачивать мои вещи в замыкание.