2009-07-21 2 views
1

Gibt es eine Möglichkeit, wie JavaScript Klicks (oder Mouse-Down, Mouse-Up) auf Flash-Objekten erkennen kann?Erkennen eines Flash-Ereignisses in JavaScript über Browser hinweg

Ich habe versucht:

  • Anbringen des 'mouseup', 'mousedown-' und 'klicken Sie auf' Ereignisse an den Flash-Objekt mit attachEvent/addEventListener
  • direkt die 'onmouseup' Anbringen 'onMouseDown' 'Onclick' Ereignisse inline auf dem Flash-Objekt
  • von Ereignis Umschalten auf Ereignis 'Einfangen' 'sprudeln' (funktioniert nur in Firefox/Safari)

ich brauche das Firefox in IE6 +, arbeiten 2+, und Safari 3+.

Danke für jede Hilfe! -Dave

Antwort

0

Besitzen Sie die Flash-Objekte?

Wir haben Rückrufe von Flash auf JavaScript implementiert, wenn Flash Klicks erkennt. Aber wir besitzen die Flash-App und können die Interaktion verwalten.

+0

ich vergaß zu erwähnen, wir die Flash-Objekte nicht besitzen. Wir versuchen, Klicks auf Display-Werbung zu erkennen. –

0

Verwenden Sie die YAHOO Yui.

If (YAHOO.deconcept.SWFObjectUtil.getPlayerVersion().major == 0) { 
    alert("error"); 
} 
6

fand ich dies bei http://progproblems.blogspot.com/2009/08/javascript-onclick-for-flash-embeded.html

1) Set the param wmode to transparent. This allows the object containing the flash to receive the javascript onclick. 
2) Use onmousedown insted of onclick. In spite of using wmode transparent, some browsers still wont call the onclick, but they do call onmousedown. 
The code looks like this: 

<div onmousedown="clickBanner(1)"> 
<object> 
<param name="movie" value="3.swf"> 
<param name="wmode" value="transparent" /> 
<embed wmode=transparent allowfullscreen="true" allowscriptaccess="always" src="3.swf"></embed> 
</object> 
</div> 

Es ist für meine Bedürfnisse arbeiten =)