Используете ли вы кавычки в jQuery при поиске значений атрибутов? - PullRequest
7 голосов
/ 03 апреля 2012

Если у меня есть такая ссылка:

<a data-btn="login"></a>

Если я хочу выбрать в jQuery, используя атрибут данных, что мне делать?

var a = $("[data-btn='login']");  //This?

var a = $("[data-btn=login]");    //Or this?

Ответы [ 3 ]

7 голосов
/ 03 апреля 2012

Начиная с jQuery 1.5, оба подхода будут работать и работать одинаково.

jQuery раньше требовал кавычек вокруг значений атрибутов, поэтому ваш второй селектор не будет работать с предыдущими версиями. Если по какой-то причине вы застряли со старой версией, используйте первый селектор.

2 голосов
/ 03 апреля 2012

Даже в jQuery 1.5+ я все еще использую кавычки, так как иногда они не работают без них.

1 голос
/ 03 апреля 2012

Забавно, я использую этот синтаксис:

var a = $('[data-btn="login"]');

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...