Comments (11)
PR submitted. This will also make mobile performance much better as well as saving on bandwidth.
from lychee-front.
I like the idea. What would be the result in the sense of how would it interact with e.g. the Justified layout?
Would the pictures just bee filled with grayed placed holder until you actually scroll to them?
Would you still be able to load the full page little by little, e.g. once the first batch of thumbnail is received you query for the next batch?
By lazy load do you mean that the thumbnail don't appear until they are scrolled over (like facebook)? If so do you think this it possible to have it as a setting to enable (either via the more...
or via an actual toggle button)?
from lychee-front.
What I'm experimenting with now is that the layout and page load would be exactly the same but the "image" would be a blank placeholder until you scrolled to it, yes. Not sure if this would be a config option you can toggle or not, that depends on the library I use. Should that be a requirement as I look into doing this?
from lychee-front.
not necessarily a requirement, but if the page still load completely while you are not scrolling (like first load the part you are scrolling and then load the rest) then I think it is fine.
One of the use case is you want to show a specific picture to someone but you don't really remember where it is in your album aside from it is in the bottom. How would that work with the lazy loading? :)
from lychee-front.
How would you normally do that now? Just jump all the way to the bottom?
from lychee-front.
yup and let firefox / chrome / IE load those pictures first. :)
from lychee-front.
On the other hand it takes my browser about 1.2 s to fully load this page with 472 pictures : https://photography.viguier.nl/gallery#1551392811988
from lychee-front.
Right, so with what I'm doing, if you just hit "page down" then it will jump to the bottom of the page and only load those images. It will probably load the ones at the top first as well since the page loads at the top, but you skip over the ones in the middle so they shouldn't get loaded.
I'm about to submit a PR. Give it a test drive and let me know what you think.
from lychee-front.
👍
from lychee-front.
@ildyria FYI, your gallery page took 28.85s to load for me... And that's with a >100Mbps download link. So I certainly think that what @alex-phillips proposes has value 😄
from lychee-front.
😄
from lychee-front.
Related Issues (20)
- suggestion: remove google fonts dependency HOT 2
- iOS Mobile Site - No scrolling of target list on move of picture HOT 1
- Mov files get imported with thumbnail but only sound is played HOT 2
- Css is too complex to permit anyone to create new theme HOT 6
- Wrong support of ' (single quote) in some places (French localisation)
- 'About' window stays open when viewing 'Settings' and other sections in sidebar HOT 1
- Problem with responsive design on iOS
- [Enhancement] Make login dialog more prominent, auto-show login dialog if necessary, hide empty smart folders for anonymous users HOT 12
- Refreshing (F5) an album or photo from within the search results fails with 422 HOT 4
- [Enhancement] SEO optimization 2/3 - Set `<meta name="robots" content="noindex">` for 404 responses
- [Enhancement] SEO optimization 3/3 - Don't use fragments for client-side navigation, but proper URLs HOT 6
- [Enhancement] SEO optimization 4/3 - Use `<a>`-tags in a semantical correct way
- Scroll position should only be restored when navigating from photos back to their album HOT 9
- [Regression] Photos in the unsorted album cannot be edited HOT 1
- On iPad Pro - the settings menu does not disappear HOT 6
- WebAuthn.js does not work on older Safari versions HOT 2
- Share button is shown on photo page even if `share_button_visible` is not set
- Album view: wrong line breaks when scrollbars are visible HOT 1
- Photo view: More menu shows when it shouldn't HOT 2
- Link for Logs is invalid HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lychee-front.