Próbuję usunąć jquery z mojej aplikacji Angular.js, aby była lżejsza, i zamiast tego umieścić jqLite Angulara. Jednak aplikacja w dużym stopniu korzysta z funkcji find („# id”) i find („.classname”), które nie są obsługiwane przez jqLite, tylko „nazwy tagów” (zgodnie z dokumentacją)
zastanawiałeś się, jakie według ciebie byłoby najlepsze podejście do zmiany tego. Jedno podejście, o którym myślałem, to tworzenie niestandardowych tagów HTML. na przykład: zmiana
<span class="btn btn-large" id="add-to-bag">Add to bag</span>
do
<a2b style="display:none;"><span class="btn btn-large" >Add to bag</span></a2b>
i
$element.find('#add-to-bag')
do
$element.find('a2b')
jakieś pomysły? inne pomysły?
dzięki
Lior
a2b
element, musisz zdefiniować dyrektywę. Czy możesz zrobić, co należy zrobić w funkcji link dyrektywy, a tym samym całkowicie uniknąć konieczności wywoływania funkcji find ()? Podobnie z twoimi klasami - czy możesz zdefiniować dyrektywy i umieścić potrzebną funkcjonalność w funkcjach linkujących (lub kompilujących) dyrektyw?
DomElement.querySelector(".myclassname")
aby wybrać pojedynczy element decendant za pomocą selektora css lub wszystkie pasujące, dodając do niego All:DomElement.querySelectorAll(".myclassname")
To oczywiście nie działa w IE <9.