I think the best approach to this would be to add _javascript_ before the ajax call and add additional _javascript_ in the ajax callback function. This is a little tricky but can be done. Pausing the request on the server is definitely no the way to go.

I haven't looked at what _javascript_ is generated but your function for your effect needs to block so the ajax request doesn't execute until it's finished... This is usually best accomplished through callbacks.

function myFx(element, callback) {
     if (element.pixelHeight > 0) {
        element.height = element.pixelHeight - 5;
        setTimeout(function(){myFx(element, callback)}, 150);
     } else {
        callback();
     }
}

function doAjax() {
    ajaxRequest...
       function: response(){
           ...
           callMyFxFunction();
           ...
       }
    ...
}

<div doAjax)">Content to be loaded by ajax when clicked</div>

That's a very crude example (code is not tested), but shows most all of the concepts.

-js



On 11/15/06, Igor Vaynberg < [EMAIL PROTECTED]> wrote:
the big problem being that you pause the server thread. now instead of 70ms it takes what? 3000ms? all because of _javascript_ effects? it makes it easy for someone to ddos your site, or at the least lower your throughput significantly.

this is a bad solution. the blocking needs to happen on the client side. i am no _javascript_ guru either, but i would try to find a client side solution.

-igor



On 11/15/06, cygnusx2112 <[EMAIL PROTECTED]> wrote:

Thanks for the clarification Igor. I ended up achieving the desired affect by
using an AjaxCallDecarator in combination with a server side pause.
Basically I was trying to do the following:

   1) Run animation effect on element
   2) Use Ajax request to replace element
   3) Run another animation effect on the element

As you noticed, I needed a way to block so that #2 and #3 would not step on
#1. As a non-_javascript_ guru I was unable to find a way to block the
_javascript_ "thread" without some kind of CPU beating hack loop. However, the
solution I am using seems to work well.

In my efforts to accomplish this I have built some pretty interesting
subclasses of AjaxEventBehavior that might be worth contributing. They
basically allow you to cleanly add pre/post visual effects to components
around an Ajax event.

Regards,

-MT




igor.vaynberg wrote:
>
>
> ....the effect is clearly executed asynchronously from the rest of the
> _javascript_ "thread" so you need to find a way to block until the effect is
> complete.
>
> -igor
>

--
View this message in context: http://www.nabble.com/Using-_javascript_-Effects-Before-An-Ajax-Call-tf2632663.html#a7359716
Sent from the Wicket - User mailing list archive at Nabble.com.


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to