The Seaside script.aculo.us package has some experimental support for a lighbox using a special #call: like method.
Lukas,
I am having trouble with the lightbox: method. I re-implemented #inform: in my component to use #lightbox: instead of #call: It works fine except when both conditions below apply : (1) Using IE (2) The calling component has one or more select element(s). In such situations the select elements are not grayed out, are modifiable and are on top of the lightbox.
Probably another IE annoyance, other browsers are OK. Does anyone know of the IE trick that would circumvent this ?
Thanks, Michel.
I am having trouble with the lightbox: method. I re-implemented #inform: in my component to use #lightbox: instead of #call: It works fine except when both conditions below apply : (1) Using IE (2) The calling component has one or more select element(s). In such situations the select elements are not grayed out, are modifiable and are on top of the lightbox.
Probably another IE annoyance, other browsers are OK. Does anyone know of the IE trick that would circumvent this ?
Yeah, this is a known problem with IE. This browser always put some form elements on top, no matter of other elements with a higher z-index. There are some ugly JavaScript hacks that hide those elements, this is probably the only solution to this problem.
Try to add something along (untested, as I don't have IE):
html script: (SUSelector new name: 'select'; do: [ :each | each element hide ])
Cheers, Lukas
Lukas Renggli wrote:
I am having trouble with the lightbox: method. I re-implemented #inform: in my component to use #lightbox: instead of #call: It works fine except when both conditions below apply : (1) Using IE (2) The calling component has one or more select element(s). In such situations the select elements are not grayed out, are modifiable and are on top of the lightbox.
Probably another IE annoyance, other browsers are OK. Does anyone know of the IE trick that would circumvent this ?
Yeah, this is a known problem with IE. This browser always put some form elements on top, no matter of other elements with a higher z-index. There are some ugly JavaScript hacks that hide those elements, this is probably the only solution to this problem.
Try to add something along (untested, as I don't have IE):
html script: (SUSelector new name: 'select'; do: [ :each | each element hide ])
Here's a good article about the issue if anyone's still interested to know more about it,
http://www.webreference.com/dhtml/diner/seethru/
Cheers!
-Boris
The current implementation is a bit of a hack, I just had a look at some existing implementation and composed something that worked for me. It definitely needs some serious work to be productively useable.
I stopped to work on this particular feature, because it is not implemented in script.aculo.us, it is just reusing some of its functionality. I hope that a nice cross browser lightbox implementation will come with one of the next releases of script.aculo.us. I also hope that i will soon have some more time to work on new Seaside things ;-)
Cheers, Lukas
Lukas,
I'm going to try using YUI's Dialog (included in the latest version of SeasideYUI) instead and see if it works any better. Some details over at,
http://leftshore.wordpress.com/2006/07/20/yui-dialog-in-seaside/
Certainly it'd be nice if Scriptaculous started implementing some of the things that YUI does quite nicely as it would save me from all that work I didn't ask for :)
Cheers!
-Boris
seaside@lists.squeakfoundation.org