Page 34 - jQuery для начинающих
P. 34

Таким образом, рассматривая выражение div#my, Sizzle найдёт вначале элемент с id="my",
             а потом уже проверит на соответствие с div. Хорошо, это вроде как фильтрация, и она тоже
             соблюдает очерёдность – это второй нюанс:


                    preFilter: {

                           "ATTR": function (match) { /* ... */ },
                           "CHILD": function (match) { /* ... */ },
                           "PSEUDO": function (match) { /* ... */ },

                    },
                    filter: {

                           "ID": function (id) { /* ... */ },
                           "TAG": function (nodeName) { /* ... */ },

                           "CLASS": function (className) { /* ... */ },
                           "ATTR": function (name, operator, check) { /* ... */ },
                           "CHILD": function (type, argument, first, last) { /* ... */ },

                           "PSEUDO": function (pseudo, argument, context, xml) { /* ... */ }
                    }


             Третий нюанс – это относительные фильтры, которые работают сразу с двумя элементами
             (они вам знакомы по CSS селекторам):



                    relative: {
                           ">": { dir: "parentNode", first: true },
                           " ": { dir: "parentNode" },

                           "+": { dir: "previousSibling", first: true },
                           "~": { dir: "previousSibling" }

                    },


                    Ой,  зачем  я  вас  всем  этим  гружу?  Почитайте  лучше  об  оптимизации  запросов
                    абзацем ниже.


             Официальная документация по библиотеки Sizzle доступна на GitHub'е проекта:

                    —  «Sizzle Documentation»

                       [https://github.com/jquery/sizzle/wiki/Sizzle-Documentation]








                                                                                                         34


                                                                                        www.trk.kg
   29   30   31   32   33   34   35   36   37   38   39