catching events in a seperate frame ?.....

S

Sylvian Stone

Hi,

I suspect that this may not be possible, but this is my little
problem.

I have a main page ('index.php') with an iframe ('mainframe') on the
left hand side. All the links on the index page load a new page of
mainly text content into the iframe.

All pretty straightforward, but I am using some javascript to launch
and hide a floating div on the index page (if I launch it in the
iframe, it will be restricted to the height and width of that frame).
The code to show / hide the div is located on the page index.php - say
the function is called 'showMe()', I would call top.showMe() to launch
the div.

The Div works fine, but when I try and catch an event via:

event.srcelement

it returns the error message 'object required', because it is being
passed from a link on a totally seperate page (the iframe)...

Is there any method for the main page (index.php) to catch the event
on 'mainframe' that triggers the div ?

The div's do show up and hide, and I can load source content into them
- only error messages keep flashing up on IE (but not on Netscape /
Firefox, etc)...

Is this possible ?

Thanks
Neil.
 
M

Martin Honnen

Sylvian Stone wrote:

The Div works fine, but when I try and catch an event via:

event.srcelement

it returns the error message 'object required', because it is being
passed from a link on a totally seperate page (the iframe)...

In IE's event model each window/frame has an event object so for events
in the iframe you need the event object of the iframe e.g.
parent.showMe(window.event);
with
function showMe (evt) {
// access evt.srcElement here
}
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,432
Messages
2,571,682
Members
48,796
Latest member
Greg L.

Latest Threads

Top