Немного новостей. Бился долго против jQ и все же пока такие результаты: нестандартные запросы jQ отстает от моей реализации в 2-3 раза. Сегодня просмотрел логику работы Sizzle, на котором построен jQ - ее я не применял. Вот ща думаю и ее применить, тогда думаю раза в 4 jQ будет отставать. Занимаемый код около 100 строк (около 3000 символов)... еще не конец....
|
Уже быстрей, чем jass?
|
Цитата:
|
Цитата:
|
нестандартные - это какие?
|
Цитата:
B < !DIV!SPAN{prop+5>=10, innerHTML=`<table>`i} возьмет все элементы B, которые содержат элементы детей кроме DIV и SPAN, у которых свойство prop есть и выполняется условие или innerHTML проходит по регулярному выражению #`text`i возьмет все элементы с ID по регулярному выражению (кстати такую задачу люди здесь уже спрашивали, а она уже была в планах) ну и т.п. |
PeaceCoder,
а Вы можете ответить на такой вопрос -- нафига? Что это дает? Вы действительно считаете, что в прикладных решениях нужны подобные говновыборки? |
Цитата:
А кстати запрос B < !DIV!SPAN{prop+5>=10, innerHTML=`<table>`i} Аналогичен jQ B:not(а дальше хз как задать запрос аналогичный моему) |
А Вам не кажется, что если Вы с таким сталкивались, то это может означать криво спроектированный шаблон?
|
Цитата:
|
И в чем будет заключатся гибкость проекта? Мы изменили шаблон -- теперь нужно переписать Ваши заумные селекторы, вместо того, чтобы, оставив ключевые классы, ничего не трогать в javascript-части. Гибко, однако.
|
Цитата:
|
> кстати такую задачу люди здесь уже спрашивали
и почему всех так интересует, как прострелить себе ногу? х)) |
как мне выбрать все элементы b, u или i, но не span имеющие идентификаторы вида 'email1234', где число после email меньше 1024, такие, что вложенные в них span-ы c классами 'current' и 'original' имеют внутри себя валидные email адреса ( при этом каждый из спанов может быть и пустым или вообще отсутствовать, но не оба одновременно )?
|
пока раскрытие скобок не сделал (много времени занимает), но с ними выглядело бы так:
(B,U,I)#`email([0-9]{1,3}|10[01][0-9]|102[0-3])`(:empty, < SPAN.curent.original{innerHTML=`регулярка валидности Email|`i}) |
> SPAN.curent.original
это должны быть разные спаны, и присутствовать должен хотябы один из них (с валидным мылом разумеется) |
> :empty
а вот таких выбирать не надо |
(B,U,I)#`email([0-9]{1,3}|10[01][0-9]|102[0-3])` < SPAN(.curent.!original,.original.!curent){innerHTML=`регулярка валидности Email|`i} Вот ток задача еще сделать быстрый разбор раскрытия скобок за 1 проход... |
опять не то, твой запрос неправильно отработает, если в одном спане будет валидный емыл, а в другом - невалидный :-Р
|
кто те ктакое сказал? условие поставлено что бы брать только валидные. Если ты имеешь ввиду в конце | то это можно убрать.
|
он выбирает те элементы в которых есть валидные элементы, но он не гарантирует, что они валидны все.
|
Цитата:
|
то есть твой предикат действует на множество с квантификатором "и"? а если мне нужно "или"?
|
, = ИЛИ
пробел = И Это везде что внутри скобок что вне скобок |
слушай, я придумал, эти селекторы должны называться регулярными :)
|
PCEngine == P(eace)C(oder)Engine :)
Он все рассчитал :) |
Цитата:
Цитата:
|
Часовой пояс GMT +3, время: 04:06. |