[Seaside] Re: With several JQDialog ... it gets very slow!
pdebruic at gmail.com
Fri Jun 20 19:04:41 UTC 2014
Johan is right, but another path is instead have the link in the cell create
then open the dialog, rather than creating all of the dialogs. Or just have
one dialog right before the closing body tag and have the link in the cell
load the dialogs contents via ajax and then open it.
Mariano Martinez Peck wrote
> Hi guys,
> I have just started to use JQDialog...because it is already integrated and
> very easy to use. In my case, I have tables where for some columns, the
> contents shows a link to open a popup. With a table of around 250 items
> 3 or 4 columns with popups..that is ... 1000 JQDialog instances at render
> time, it gets very slow! The table passes from 1s to render to 3s! :(
> I have benchmarked everything. From the server side, the response is fast.
> I have even tried by specifying no html (so the popup does simply
> nothing....and same results). The way I create the dialogs and the button
> for them is:
> div := html div
> script: (html jQuery new dialog
> html: dialog;
> title: anItem class label;
> autoOpen: false;
> draggable: true;
> resizable: false;
> position: 'top';
> closeOnEscape: true;
> maxWidth: 900;
> width: 900;
> addButton: 'Close' do: html jQuery new dialog close).
> id := div ensureId.
> html anchor
> onClick: (html jQuery id: id) dialog open;
> with: (description toString: anItem). ]
> Is there a way to improve this? For example, there is no way to make the
> dialog object creation lazy (upon button click)? I read that making the
> dialog not draggable and not resizable increases speed..but I tested and
> was not that much.
>>From js profiling it looks like what it takes time is the dialog creation.
> Thanks in advance,
> seaside mailing list
> seaside at .squeakfoundation
View this message in context: http://forum.world.st/With-several-JQDialog-it-gets-very-slow-tp4763985p4764003.html
Sent from the Seaside General mailing list archive at Nabble.com.
More information about the seaside