Buona lettura per un'introduzione alla DOM generale: DOM Scripting - la roba di codice sarà un po 'di base per un programmatore esperto, ma vale la pena leggere l'IMO
Le best practice che vale la pena prendere molto sul serio:
Separazione di contenuto / struttura, presentazione e comportamento. Mantieni il tuo HTML, CSS e JS separati il più possibile tramite hook piuttosto che scaricare JS inline in tag di script, CSS in tag di stile e attributi di stile e gestori di eventi in linea nel codice HTML. Rende molto più facile pensare e lavorare.
HTML semantico - fondamentalmente usa l'HTML per descrivere il più possibile il contenuto. Evita wrapper e tag inutili usati semplicemente per spingere il layout. Non ti uccidere per questo, ma mantenere l'HTML minimo e appropriato rende più facile la lettura e il debug. Il vantaggio per l'accessibilità e il SEO sono solo effetti collaterali piacevoli rispetto alla facilità di sviluppo.
La vera padronanza dei CSS è in realtà piuttosto spaventosa e anche molti stilisti non si preoccupano di farlo. Probabilmente non vorrai perdere tempo a meno che i problemi di layout o l'interfaccia utente non ti interessino davvero profondamente. Ma prestate molta attenzione alla visualizzazione e alla posizione delle proprietà e al modo in cui il radicamento dei genitori assoluti varia a seconda di quali schemi di posizionamento sono impostati sugli antenati (molto utile). Imparare la schifezza dei CSS è un vantaggio competitivo importante nell'interfaccia utente. Anche quando si passa a più ruoli di tipo di progettazione dell'interfaccia utente e JavaScript sul lato client. Essere bravi elimina un sacco di JavaScript.
JS stesso è molto diverso dalle lingue più popolari. Il successo e la capacità di adattarsi a una vasta gamma di piattaforme è in gran parte dovuto a questo. Se sai qualcosa con la sintassi basata su c non aspettarti che si comporti allo stesso modo. Usare le funzioni di prima classe, le chiusure e imparare ad adattarsi a un linguaggio altamente mutevole sono abilità critiche, ma per fortuna è abbastanza facile armeggiare e fare in modo che le cose possano essere utilizzate in modo abbastanza rapido. jQuery può essere molto utile con tutte le cose del DOM, ma non lasciare che capisca come è fatto con vanilla JS e l'API DOM che è tutto ciò che jQuery usa sotto il cofano.
Ma se stai cercando "c'è solo un modo per farlo bene" non lo troverai mai sul lato client. I problemi sono troppo diversi e troppo complessi. Non puoi mai smettere di imparare neanche. Il giorno che fai, è l'inizio della settimana che le tue abilità sono diventate improvvisamente obsolete.
Penso che ci sia più valore nella guida definitiva di O'Reilly rispetto alle Good Parts personalmente. Sono sicuro che almeno 3 persone hanno raccomandato che ormai però. Non è una cattiva lettura. Viene semplicemente menzionato in una qualsiasi domanda simile a distanza e Crockford interpreta JS non con cui sono d'accordo al 100%.