Итак, это может быть ошибка... Я ошибся в CSS-пути, чтобы проверить, что элементы, которые были обработаны, имеют функцию onclick, начинающуюся с "ajaxLoad("
document.querySelectorAll( 'a[onclick^="ajaxLoad("' )
Как вы можете видеть, я забыл закрыть атрибут accessor с помощью ]
, например:
document.querySelectorAll( 'a[onclick^="ajaxLoad(]"' )
Как ни странно, это сработало!
Изменить - нет. Я не использовал правильный селектор CSS:
document.querySelectorAll( 'a[onclick^="ajaxLoad("]' )
... но, как упоминалось в комментариях, очевидно, что эта дополнительная опечатка также работает!
Это явно неверно. Я заметил это, когда я пришел добавить еще один тип ссылки, класса tc-link
, и мне было интересно, могу ли я просто связать его, как в стилях CSS, как:
document.querySelectorAll( 'a[onclick^="ajaxLoad(", a.tc-link' )
Ответ заключается в том, что вы можете закрыть эту скобку, но не тогда, когда эта опечатка оставлена.
Uncaught DOMException: Не удалось выполнить 'querySelectorAll' в 'Document': 'a [onclick ^ = "ajaxLoad (", tc-link "не является допустимым селектором.
Он работает на ^=
, $=
и *=
, и из того, что я вижу, не происходит в Firefox или Opera (и у меня нет других браузеров для тестирования).
Я думал, что это была языковая причуда сперва, но пересмотренный вопрос: может ли кто-нибудь определить, на каком уровне (DOM? V8? Er.. webkit? Я не знаю, что это такое) Javascript/код браузера это относится к тому, где оно может быть сообщено/исправлено?