Представляю вашему вниманию выборку, которая легко ищет по CSS1-3 селекторам, тестируя её в SlickSpeed я обнаружил в ней приличное количество багов, но в результате половина была исправлена, а половина так и осталась, вообще по сути выборка всё ищет и находит нормально, но почемуто этот "заумный" SlickSpeed определил в ней баги...
Исходя из названия, можно понять что выборка мала, и это действительно так, из всех известных мне выборок, моя выборка меньше минимум в 2 раза! Наверное это её самая первая особенность!
Выборкой я уже не занимался 2 месяца, и сегодня шарясь по компьютеру набрёл на неё, именно это и спровоцировало меня о ней заявить тут!)
В общем описывать её можно долго, рассуждения это конечно хорошо, но главное, выборкой я решил опять заняться, темболее за 2 месяца я получше стал работать и понимать DOM!
Объясню как она работает:
Code
1
<script type='text/javascript'>
2
easy(selectors)[number]
3
4
// Пример:
5
easy('html:root body > div + span#exemple ~ [class$="xemple"]:checked')[0].style.color='red'
Infamous, это одна из незаконченых вариантов выборки, так что я не знаю, может есть вариант побыстрее, а насчёт последнего, это да, иерархия у меня медленная, и ещё, в jQ стоит querySelectorAll, я его не буду ставить до тех пор пока не сделаю нормальный вариант! aka Latro
Aleko, просто дело в том, что я уже понимаю как это всё делается, вот собираюсь заняться сейчас переписью заново, чтобы сделать стоющий вариант!) Да, и спс!) aka Latro
DSC, ничерта не понял и только расстроился . Хотелось реализовать нормальную работу по цепочке и поиск в HTMLCollection. Начал всё это дело расписывать и начисто пропало желание продолжать . Совсем не хочется сейчас изобретать способ парсить селекторы. Идея конечно была, но реализовывать влом. В общем ещё раз респект тебе. Бесплатные обои.
Aleko, ну спс конечн)) Я вообще решил делать выборку когда увидел твой sAD.get() Вообще трудностей в ней мало, хотя были проблемы с реакцией на положение фильтров, впринцепи если всё продумать, то получится очень даже неплохо) Вот щас решил переписывать, уже по результатам скорости получше сделал, хотя и сделал только тег, класс, ид, и аттрибуты) aka Latro
Infamous, я же попросил без гонева! И вообще, я могу как и другие выборки поставить querySelectorAll, и она тоже будет супер быстрой! Aleko, незнаю, щас попробывал то что ты написал сделать, всё вроде норм... Покаж скрин aka Latro
p.s.: выборка в стадии разработок, поэтому просьба не писать негативных комментариев!
Aleko, я объясню в чём дело: выборкой я присваиваю checked первому input'у, а как известно FireFox при обновлении страницы сохраняет значения checked, disabled и т.п., именно поэтому и выделяется первый, т.к. теперь уже он первый со значением checked==true! Очищая кэш, ты удаляешь сохранённые данные, и браузер реагирует опять как в начале! aka Latro
При использовании выборки, её название можно писать как easy, так и $E!
Также в выборку можно добавить свои псевдо-классы, это делается очень просто:
Code
1
<script type='text/javascript'>
2
easy['my-pseudo-class']=function(){[ваш код]}
3
4
// пример:
5
$E.myid=function(o,n){return o.id==n}// если вы собираетесь чтобы у псевдо-класса не было переменной информации(информации в скобках, да и самих скобок), то второй атрибут укажет на название псевдо-класса
6
7
$E.ids=function(o,v){return o.id==v}// данный вариант означает, что в скобках псевдо-класса будет указываться нужный айди
8
9
$E.id=function(o,v,n){return o[n]==v}// тоже что и предыдущий вариант, только третий атрибут указывает на название псевдо-класса!
Выборка не использует querySelectorAll, это сделано чтобы пользователь мог видеть реальную скорость выборки, да и вообще, это ещё не последняя версия, думаю поставить эту функцию в других, более быстрых версиях!
aka Latro
Сообщение отредактировал DSC - Четверг, 07.10.2010, 23:17
Aleko, нелохо, по сокращались в основном function, их больше всего было) Кстати написал вариант иерархии побыстрее!) насчёт меньше не знаю, может немного больше кода... p.s.: у тебя подсветка корявит код, сделай его с переносами и посмотри список сплитов els e aka Latro
Сообщение отредактировал DSC - Суббота, 16.10.2010, 17:14