Hi,

See the documentation for `Event.observe`[1] (which is what you're
calling indirectly from the `Element#observe` function), specifically
the "Preventing the Default Event Action and Bubbling" part, and the
`Event` object[2]: You don't return false to cancel the `click` event,
you use the `Event#preventDefault` function (which is a standard DOM
function[3] that Prototype ensures is present even on implementations
that lack it) or, more likely, `Event#stop`[4] which both prevents the
default action and stops the event bubbling.

[1] http://api.prototypejs.org/dom/event/observe/
[2] http://api.prototypejs.org/dom/event/
[3] 
http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-Event-preventDefault
[4] http://api.prototypejs.org/dom/event/stop/

HTH,
--
T.J. Crowder
Independent Software Engineer
tj / crowder software / com
www / crowder software / com

On Oct 22, 2:41 am, JoJo <tokyot...@gmail.com> wrote:
> I use anchors to call javascript functions. Usually, I do this:
>
> <a href="javascript:void(0)" onclick="someFunc(); return false;">
>    call the function
> </a>
>
> This works fine in all browsers. Window.onbeforeunload is never
> triggered because the ONCLICK returns false, and thus the HREF if not
> executed. When HREF is not executed, the browser does not believe that
> the window in unloading. Now, I'm trying to create a dynamic anchor to
> accomplish the same thing. It looks nearly identical to the HTML
> anchor, but now it's triggering window.onbeforeunload in IE8. How do I
> not trigger it?
>
> dynamicAnchor = new Element(
>     'a', {
>         href: 'javascript:void(0)',
>     }
> ).observe(
>     'click',
>     function(parameter) {
>         return function() {
>             window.status = parameter;
>             return false;
>         }
>     }(localVariable)
> );

-- 
You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to prototype-scriptacul...@googlegroups.com.
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en.

Reply via email to