Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #61 (permalink)  
Старый 02.02.2012, 15:23
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от poorking Посмотреть сообщение
Safari can't handle uppercase or unicode characters when in quirks mode.

EN ---> RU

Safari в режиме совместимости не может обрабатывать символы в верхнем регистре или в юникоде.
Наверное, не понял предложения, но при чём тут проверка наличия поддержки querySelector?
На MDN нашёл баг на Safari, это он и есть ?

Если она не поддерживает символы в верхнем регисте в режиме совместимости, почему бы не перевести строку селектора к нижнему регистру? .TEST или .test, в html разницы быть не должно.

ЗЫ Если вам показалось, что я доказываю свою правоту, то это не так. (после марума может так казаться ) Я хочу разобраться и понять.

Сообщение от monolithed Посмотреть сообщение
В IE7- тоже не прокатывает
не имплементировано, IE8+.

Последний раз редактировалось melky, 02.02.2012 в 15:28.
Ответить с цитированием
  #62 (permalink)  
Старый 02.02.2012, 15:32
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

Сообщение от melky
при чём тут проверка наличия поддержки querySelector?
Возможно семантически не верно названа переменная (hasQSA), но этот баг, не смотря на поддержку браузером метода querySelector - есть причина использовать самописный движок нежели нативный, а значение hasQSA в QSA CSS Selector Engine именно для этого и вычисляется
__________________
readOnly
Ответить с цитированием
  #63 (permalink)  
Старый 02.02.2012, 15:34
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

Сообщение от melky
почему бы не перевести строку селектора к нижнему регистру? .TEST или .test, в html разницы быть не должно.
All Selectors syntax is case-insensitive within the ASCII range
http://www.w3.org/TR/selectors/#casesens

Возможно в этом, хотя я задумался и почти уже не знаю даже


ASCII включает национальный алфавит, так что, выходит вы правы с мыслью о том, что можно привести селектор к нижнему регистру, надо потестить
__________________
readOnly

Последний раз редактировалось poorking, 02.02.2012 в 15:43.
Ответить с цитированием
  #64 (permalink)  
Старый 02.02.2012, 18:15
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от monolithed
if (!div.querySelectorAll || div.querySelectorAll(".TEST")|0)
я думаю пусть этим занимается обфускатор
Ответить с цитированием
  #65 (permalink)  
Старый 03.02.2012, 09:21
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от devote
я думаю пусть этим занимается обфускатор
вообще я хотел сделать акцент на этом div = null;
Ответить с цитированием
  #66 (permalink)  
Старый 03.02.2012, 10:18
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от monolithed
вообще я хотел сделать акцент на этом div = null;
как я заметил обфускатор вообще удаляет все эти div = null; считает что без них лучшее.
Ответить с цитированием
  #67 (permalink)  
Старый 03.02.2012, 10:37
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от devote
как я заметил обфускатор вообще удаляет все эти div = null; считает что без них лучшее.
Я имею ввиду, то что нет смысла писать это выражение два раза

var hasQSA = (function() {
    var div = document.createElement('div');
    div.innerHTML = "<p class='TEST'></p>";

    if (!div.querySelectorAll || div.querySelectorAll(".TEST")|0)
        return 0;
    
    *!* 
    div = null; 
    */!*
    return 1;
})();

alert(hasQSA);
Ответить с цитированием
  #68 (permalink)  
Старый 03.02.2012, 10:44
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от monolithed
Я имею ввиду, то что нет смысла писать это выражение два раза
да я понял к чему ты ведешь.
Ответить с цитированием
  #69 (permalink)  
Старый 14.03.2012, 10:34
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

во время работы с селектором, обнаружил ошибку:
не искал по селекторам если они содержали слеш "\"

Качаем новую версию, в первом топике.

так же залил на github
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine

Последний раз редактировалось devote, 14.03.2012 в 14:48.
Ответить с цитированием
  #70 (permalink)  
Старый 18.03.2012, 01:13
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Сообщение от devote
qsa.querySelectorAll( "div + p > a", document.getElemetById("myNode") );
Давно хотел узнать: а можно ли повесить в прототип html узла метод, чтоб работало в старых IE?
Если рассматривать эту библиотеку в качестве примера, то можно было-бы убрать контекст из второго аргумента.
__________________
"Matreshka is fucking awesome" © чувак с Reddit
Matreshka.js - Три возможности
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск