Czy ktoś może mi wyjaśnić, jak zamknięcie działa w formie bardziej przyjaznej dla użytkownika? Jego pomoc i dokumentacja prowadzą mnie donikąd. Jak wykonać proste zadanie, takie jak wybór i modyfikacja domeny (np. Wybrać wszystkie na stronie i ukryć je)?mylące biblioteki zamknięcia Google api
Odpowiedz
Zobacz http://derekslager.com/blog/posts/2010/06/google-closure-introduction.ashx, porównanie # 4,
Ukryj wszystkie div
„s:
<html>
<head>
<script src="http://closure-library.googlecode.com/svn/trunk/closure/goog/base.js" type="text/javascript"></script>
<script language="JavaScript">
goog.require('goog.dom.query');
goog.require('goog.style');
</script>
<script>
function HideElement(selector) {
goog.array.map(goog.dom.query(selector, null), function(e) {
goog.style.showElement(e, false);
});
}
</script>
</head>
<body>
<div>div</div>
<p>paragraph</p>
<div>another div</div>
<input type="button" value="hide" onclick="HideElement('div');"/>
</body>
</html>
nie może pomóc z podziałem przyjazny dla użytkownika, choć.
Myślałem, że dokumenty API były naprawdę świetne, ale po napisaniu kilkuset linii kodu natknąłem się na wszelkiego rodzaju dziwactwa i problemy. Na przykład dokumentacja modułu DOM nie ma jasnego punktu wejścia do wykrywania metod manipulacji domem -> wszystkie łącza najwyższego poziomu mają pomóc obiektom, których używa wewnętrznie. Możesz jednak znaleźć kilka użytecznych metod, jeśli na liście referencji do pakietu klikniesz dom, a następnie DomHelper. Wygląda na to, że potrzebujesz utworzyć instancję DomHelper, aby uzyskać dostęp do tych narzędzi?
Na szczęście oni zrobili zawierają przydatne linki do kodu w dokumentach API. Jeśli zagłębisz się w źródle DomHelper zobaczysz, że większość wymienionych metod jest dostępna bezpośrednio z przestrzeni nazw goog.dom!
Moim innym poważnym zarzutem jest to, że dokumenty często nie zawierają nazw argumentów/nazw/opisów. Na przykład po rozwinięciu goog.dom.DomHelper.contains nie wyświetla żadnych argumentów, ale kod poprawnie opisuje dwa argumenty. Nie mogę uwierzyć, że stworzyli tak dokładnie opisaną i udokumentowaną bibliotekę, a następnie nie zawarli tej informacji w (wygenerowanych) dokumentach! Chociaż przeglądając ich kod, często można znaleźć zwięzłe i nieinformacyjne komentarze w swoich adnotacjach.
Podsumowując: przeczytaj kod! Zawsze nienawidzę słyszeć tej odpowiedzi, ale teraz wydaje się najlepszą opcją.
Posiadam także książkę "Zamknięcie O'Reilly", i chociaż zapewnia ona pewne spostrzeżenia, nadal nie jest zbyt głęboka w zakresie korzystania z podstawowych wzorów i narzędzi dostępnych w bibliotece. Naprawdę chciałbym mieć lepszy pogląd na to, jak części biblioteki mają wchodzić w interakcje. Chyba ktoś powinien przygotować książkę kucharską z zamknięciem narzędzia?
Uważam, szturchanie w kodzie znacznie bardziej pomocny niż dokumenty. Wszystko jest całkiem dobrze skomentował. – Ally
dobre źródło. Dziękuję Ci. – jirkap
To pokazuje się naprawdę wysoko w wyszukiwaniach Google, czy możesz mi powiedzieć, gdzie trafia query.js? query_test.html in third_pary działa dobrze, ale gdy dodaję query.js w google/dom i instrukcję require, to goog.dom.query nadal nie jest dostępne. – HMR
w katalogu goog w pliku deps.js zmieniłem goog.addDependency ("dojo/dom/query.js", i zadziałało.) – HMR