1

JavaScript を使用して、Firefox でマウス イベントをキャプチャし、Shockwave Director オブジェクト (フラッシュではない) の上に移動してクリックする方法を教えてください。コードは IE では機能しますが、FF では機能しません。

このスクリプトは IE と Moz の両方のドキュメント本体で機能しますが、マウスが Shockwave Director オブジェクトの埋め込みの上にある場合、マウス イベントは発生しません。

アップデート:

  function displaycoordIE(){
     window.status=event.clientX+" : " + event.clientY;
  }      
  function displaycoordNS(e){
     window.status=e.clientX+" : " + e.clientY;
  }
  function displaycoordMoz(e)
  {
      window.alert(e.clientX+" : " + e.clientY);
  }

  document.onmousemove = displaycoordIE;
  document.onmousemove = displaycoordNS;
  document.onclick = displaycoordMoz;

補足として、「mousemove」に addEventListener を使用してみました。

4

2 に答える 2

2

また、Director内でマウスイベントをキャッチし(失敗することはありません)、gotoNetPage "javascript:function('"&argument& "')"を使用して、そこからJS関数を呼び出すこともできます。

ej:

on mouseDown me
   gotoNetPage "javascript:function('" & argument & "')"
end

用語にはそのようなイベントがないため、マウスの動きの検出は少し注意が必要ですが、次を使用できます。

property pMouseLock

on beginsprite
   pMouseLock = _mouse.mouseLock
end
on exitFrame 
   if _mouse.mouseLock <> pMouseLock then
      gotoNetPage "javascript:function('" & argument & "')"
      pMouseLock = _mouse.mouseLock
   end if
end

よろしく

于 2009-12-03T11:51:22.140 に答える
1

ただのアイデア。

Shockwave オブジェクトを不透明度 0 の div でオーバーレイしてみると、div 自体でイベントをキャプチャできます。

于 2008-10-04T23:09:31.940 に答える