Lightbox2

From: Matt29 May 2011 20:23
To: af (CAER) 14 of 91
Surely that's only because it's built on top of Prototype and the copy that is included has not been minified?
From: af (CAER)29 May 2011 20:27
To: Matt 15 of 91
That accounts for 160KB of it, yeah, but it still means you need to include Prototype, which isn't exactly that popular compared to jQuery.
From: Matt29 May 2011 20:30
To: af (CAER) 16 of 91
I've never used Prototype, always used JQuery, I was just pointing it out. Unminified JQuery is about the same size.
From: steve30 May 2011 11:05
To: ALL17 of 91
Having this thread open, in another tab, keeps making me think Beehive has a Twitter-like feature of "(2)" new posts. :C
From: af (CAER)30 May 2011 13:06
To: steve 18 of 91
Same :$
From: koswix30 May 2011 13:06
To: steve 19 of 91

LLLLLLLLLLLLLL
me too :$

From: af (CAER)30 May 2011 15:05
To: ANT_THOMAS 20 of 91
From: koswix30 May 2011 15:20
To: af (CAER) 21 of 91

Can you make it so the image appears on the existing page on Android , rather than adding 600odd pixels to the bottom of the page to display in?

 


Lightbox and others do the same, so I suspect not :(

EDITED: 30 May 2011 16:35 by KOSWIX
From: af (CAER)30 May 2011 15:23
To: koswix 22 of 91
Does it display the image at the bottom of the extra 6000 pixels, or does it add the space but still display the image at the top?

The latter is possibly Android scaling the image itself after telling the JavaScript how big it originally was.
From: ANT_THOMAS30 May 2011 15:47
To: af (CAER) 23 of 91

I'll give that a go tomorrow.

 

:D

From: koswix30 May 2011 16:35
To: af (CAER) 24 of 91
displays the image in the new space, aligned with the bottom of the page.
From: af (CAER)30 May 2011 16:37
To: koswix 25 of 91

How queer. That suggests to me an issue with the way the browser is reporting the scroll position. HMMM :(

 

I've also just found out that IE9 displays all images at the same size as whichever image you click first. This is most vexing :@ (and best of all it works just fine in IE8 :? )

EDITED: 30 May 2011 16:39 by CAER
From: koswix30 May 2011 16:39
To: af (CAER) 26 of 91
Oddness :|
From: CHYRON (DSMITHHFX)30 May 2011 19:12
To: af (CAER) 27 of 91
IE is more diabolically cruel than waterboarding...
From: af (CAER)30 May 2011 22:06
To: CHYRON (DSMITHHFX) 28 of 91
Heh. Turned out that assigning a new src to an existing image object doesn't update the width and height properties in IE9. Fixed it now, anyway (by creating a new image object each time).
From: Drew (X3N0PH0N)30 May 2011 22:42
To: af (CAER) 29 of 91
That's reet nice is that. I shall use that in future whenever I have to do such things.

Nice work.
From: Drew (X3N0PH0N)30 May 2011 22:55
To: af (CAER) 30 of 91
If you expand this (I presume you'll want to add fading in and out? People seem to expect that these days) .. try not to go too far and end up being what lightbox is. This should be the "I just want it to work without a lot of fucking around" option. So not too many settings and tasteful defaults.

</telling you to do stuff you probably already knew>
From: af (CAER)30 May 2011 23:11
To: Drew (X3N0PH0N) 31 of 91
Fading, hmm. Dunno*. Higher priority is stuff like "Next" and "Previous" links, and maybe a close button or something (since it's not immediately obvious how to hide the popup, and in my experience clicking popups tends to make bad things happen).

I would also like to do the thing Lightbox does where you can have more than one gallery per page, although I dunno how useful that'd be. Another thing that might be useful is adding a 'darkener' thing to dim the rest of the page.

edit: I also had an idea to examine the link to see if it contained a thumbnail image, and use that as a placeholder while the full image loads.

I've just updated it btw, so that it actually scales properly (i.e. maintaining aspect ratio).

* but only because I don't know how I'd do it :$ I'll have to look at how jQuery manages it - perhaps with some fiddling with transparency properties and such.
EDITED: 30 May 2011 23:20 by CAER
From: Drew (X3N0PH0N)30 May 2011 23:38
To: af (CAER) 32 of 91
Why not just use jquery? I know you want to keep it minimal but jquery's hardly massive.

I've never seen a close button done elegantly. I agree that it should be there but ... it always just looks ugly.

Separate galleries would be handy, yeah. But please make them easier to manage than lightbox does :((

Maybe have an array in settings where you specify the id you will use in galleries or something? I dunno, needs to be something 'upfront' like that. I can't remember how lightbox does it but I remember it being unintuitive as all fuck.
From: af (CAER)30 May 2011 23:50
To: Drew (X3N0PH0N) 33 of 91
Lightbox uses rel="lightbox[galleryname]" to mark individual galleries. Doesn't seem all that difficult to me, but then I've not actually tried using it.

Maybe a better way would be to allow the user to specify arbitrary CSS selectors to mark the containers for each gallery or something, like this:
JavaScript code:
QuickSlideConfig = {
    galleries: ["#main-gallery", ".other-gallery", "ul.gallery-list>li>div"]
}
Could be an issue if any of those selectors returns more than one container element, but document.querySelector() could be used to only get the first of them.

As for jQuery, yeah, it's not huge, but it's still 30K or so after gzip (compared to 1.3K or so for quickslide-min.js gzipped, 2.9K otherwise), and I don't want to force any dependencies - I've been trying to make the code as unobtrusive as possible. On the other hand, I could quite easily add an option to enable the use of jQuery for stuff like animation, so it'd be there if the user wants it. It depends how difficult it'd be to do the animation, really, and what kind of animations should be included.
EDITED: 30 May 2011 23:54 by CAER