[Seaside] Use of onMouseOver: and onMouseOut: in Seaside 2.8x
Sebastian Sastre
ssastre at seaswork.com
Thu Nov 6 09:11:53 UTC 2008
Hi Richard,
that will be rendered as javascript so you can't expect a server side halt for
code that runs in DOM unless a callback is envolved. Unfortunately there is not
Firebug code halts yet to mimic our debugging style. I miss that when
javascripting.
You can use this to check in firebug's console if your code executes under your
condition:
SUScript new
add: (SULogger new log: 'The mouse is over!');
add: (your javascript serius code here);
yourself
Usage of onClick, onMouseOver, etc are considered the "vile way" to do it.
Instead prefer observe(). Details here:
http://www.prototypejs.org/api/event/observe
Cheers,
Sebastian Sastre
> -----Mensaje original-----
> De: seaside-bounces at lists.squeakfoundation.org
> [mailto:seaside-bounces at lists.squeakfoundation.org] En nombre
> de Richard E. Flower
> Enviado el: Jueves, 06 de Noviembre de 2008 04:36
> Para: Seaside - general discussion
> Asunto: [Seaside] Use of onMouseOver: and onMouseOut: in Seaside 2.8x
>
> As I mentioned earlier today, I'm updating some older code that was
> written for Seaside 2.6x and the following code
> does not appear to work -- at least to what I'm expecting -- it does
> not get any DNUs or anything like that..
> I'm guessing it's an outdated construct. If I put a
> breakpoint in the
> onMouseOver it is only
> called during initial rendering but never when the event
> occurs which
> is what I'm expecting.
> I've never used these events before and perhaps the constructs are
> different for the newer Seaside?
>
> Below is the offending code snippet:
>
> renderRowNumber: index item: row on: html
> html tableRow id: 'row' , index asString;
> class: (self classForRowNumber: index);
> onClick: (html evaluator
> callback: [:aScript | self
> adjustRowColorsUsingIndex: index
> onScript: aScript];
> return: false);
> onMouseOver:
> ('javascript:Element.addClassName("row', index
> asString, '","RowColor-', self highlightColor, '")');
> onMouseOut:
> ('javascript:Element.removeClassName("row', index
> asString, '","RowColor-', self highlightColor, '")');
> with: [columns
> do: [:ea | self
> renderColumn: ea
> row: row
> on: html]]
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
More information about the seaside
mailing list