Domanda

Come si catturano gli eventi del mouse, si spostano e si fanno clic sopra un oggetto Shockwave Director (non flash) in Firefox, tramite JavaScript.Il codice funziona in IE ma non in FF.

Lo script funziona sul corpo del documento sia di IE che di Moz, ma gli eventi del mouse non si attivano quando il mouse si trova sopra l'incorporamento di un oggetto Shockwave Director.

Aggiornamento:

  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;

Solo una nota a margine, ho anche provato a utilizzare un addEventListener per "mousemove".

È stato utile?

Soluzione

Potresti anche catturare l'evento del mouse in Director (che non fallisce mai) e quindi chiamare le tue funzioni JS da lì, usando gotoNetPage "javascript:function('" & argomento & "')"

es.:

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

Il rilevamento del movimento del mouse è un po' più complicato, poiché nel gergo non esiste un evento del genere, ma puoi utilizzare:

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

saluti

Altri suggerimenti

Solo un'idea.

Prova a sovrapporre l'oggetto shockwave con un div con opacità 0, quindi puoi catturare eventi sul div stesso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top