3

Is there a way I can have JavaScript/jQuery know when a Flash object has been clicked (and still have Flash process the click)?

I tried putting a table on top of the object with position: fixed and a z-index and the object set to param name='wmode' value='transparent' so I could have my JavaScript detect which column was clicked using jQuery's click(), but the clicks were never intercepted by JavaScript (Chromium Linux).

Is there another way to accomplish this?

Ryan Lester
  • 2,363
  • 7
  • 25
  • 38

2 Answers2

10

Thank you Marty Wallace and Darwin!

<div id='flash'>
<object>
<param name='wmode' value='transparent' />
<embed src='foo.swf' wmode=transparent allowfullscreen='true' allowscriptaccess='always'>
</embed>
</object>
</div>

<div id='output'></div>

<script type='text/javascript'>
$('#flash').mousedown(function (e){
    $('#output').append('<br>X: ' + e.pageX + ' ; Y: ' + e.pageY);
});
</script>

After testing, the XY coordinates of any clicks on the Flash object will be accurately printed to the screen and mouse interaction with the Flash object will proceed as normal.

Ryan Lester
  • 2,363
  • 7
  • 25
  • 38
0

Now irrelevant:

Only if you have access to the flash source using ExternalInterface call. This is one of the reasons why flash for web is evil.

bjornd
  • 22,397
  • 4
  • 57
  • 73