diff options
| author | 2013-11-03 19:22:59 +0100 | |
|---|---|---|
| committer | 2013-11-04 23:31:36 +0100 | |
| commit | 231516f5238b6023001bed548569077c61411a4e (patch) | |
| tree | 2265c174152f3bc7c0fbe49f5a776bc4ca5c3020 /app/views/javascript | |
| parent | b23d66ec360208cf1e1d8ee2fc3bebf25997d9fa (diff) | |
Grosse optimisation JavaScript
* Fusion de endless_mode.js dans main.js car endless_mode.js est
toujours chargé et assez petit.
* Suppression des changements de style en JavaScript lors du chargement
(genre boucle de .hide(), ou d'ajout de classe ".stick") et
implémentation en PHP + CSS à la place.
* Chargement JavaScript asynchrone (defer + async) pour de meilleurs
performances.
* Utilisation préférable des événements globaux plutôt que des
événements pour chaque élément avec jQuery.on(events, selector) pour un
chargement plus rapide et moins de mémoire utilisée.
* Optimisation manuelle du JavaScript (sélecteurs CSS plus performants,
méthodes jQuery plus appropriées, etc.).
* Désactivation de init_img() qui était coûteux, lancé à un moment où
les images ne sont de toute manière pas encore chargées, et qui
n'apporte rien car il y a déjà un img {max-width:100%} en CSS.
* JavaScript en mode strict.
* Enfin, passage du code JavaScript dans JSLint et du coup nombreuses
corrections (syntaxe, variables, méthodes dépréciées...).
* Devrait permettre de fermer
https://github.com/marienfressinaud/FreshRSS/issues/121
* Au passage, quelques simplifications CSS pour de meilleures
performances.
Diffstat (limited to 'app/views/javascript')
| -rw-r--r-- | app/views/javascript/main.phtml | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/app/views/javascript/main.phtml b/app/views/javascript/main.phtml index 82ed8ff18..7adb57037 100644 --- a/app/views/javascript/main.phtml +++ b/app/views/javascript/main.phtml @@ -1,13 +1,13 @@ <?php + echo '"use strict";', "\n"; $mark = $this->conf->markWhen (); echo 'var ', - 'hide_posts=', $this->conf->displayPosts () === 'no' ? 'true,' : 'false,', - 'hide_posts=', $this->conf->displayPosts () === 'no' ? 'true,' : 'false,', - 'auto_mark_article=', $mark['article'] === 'yes' ? 'true,' : 'false,', - 'auto_mark_site=', $mark['site'] === 'yes' ? 'true,' : 'false,', - 'auto_mark_scroll=', $mark['scroll'] === 'yes' ? 'true,' : 'false,', - 'auto_load_more=', $this->conf->autoLoadMore () === 'yes' ? 'true,' : 'false,', - 'does_lazyload=', $this->conf->lazyload() === 'yes' ? 'true' : 'false', ";\n"; + 'hide_posts=', ($this->conf->displayPosts () === 'yes' || Request::param ('output') === 'reader') ? 'false' : 'true', + ',auto_mark_article=', $mark['article'] === 'yes' ? 'true' : 'false', + ',auto_mark_site=', $mark['site'] === 'yes' ? 'true' : 'false', + ',auto_mark_scroll=', $mark['scroll'] === 'yes' ? 'true' : 'false', + ',auto_load_more=', $this->conf->autoLoadMore () === 'yes' ? 'true' : 'false', + ',does_lazyload=', $this->conf->lazyload() === 'yes' ? 'true' : 'false', ";\n"; $s = $this->conf->shortcuts (); echo 'var shortcuts={', |
