Javascript의 마우스 이벤트를 사용하여 마우스 위치 정보를 전달하고 마우스 위치에 따라 특정 애니메이션 프레임을 표시합니다.마우스가 플래시 위에있을 때 Javascript mousemove 이벤트가 실행되지 않습니다.
마우스가 플래시 객체 위에있을 때 자바 스크립트 이벤트를 더 이상 발생시키지 않는 것이 문제입니다. Chrome에서 테스트했는데 작동하는 것처럼 보였지만 Firefox는 협조하고 싶지 않습니다.
내 플래시 개체는 웹 사이트 중간에 위치하고 배경이 투명합니다. 그것은 이쪽에 있어야합니다. 또한, 차라리 두 가지 이유 액션 스크립트로 작업을 이동하지 않는 게 좋을 :
웹 사이트의 폭 (예를 들어 다른 브라우저) 일정하지 그래서 나도 플래시에 뷰포트의 폭을 추진해야 할 것이다하는 스크립트, 심지어 mouseenter 이벤트 등을 복잡하게합니다.
나는 아주 잘 모른다.
코드 : (그것은 또한 페이지에 다른 곳에서 사용 있기 때문에 내가 여기에 jQuery를 사용하고, 이전 모형 일반 JS를 사용)
function viewport()
{
var e = window
, a = 'inner';
if (!('innerWidth' in window))
{
a = 'client';
e = document.documentElement || document.body;
}
return e[ a+'Width' ];
}
puszka = document.getElementById("puszka");
$().mousemove(function(e)
{
var x = e.pageX || e.clientX + document.body.scrollLeft;
var frame = Math.floor(x * 100/viewport());
puszka.transformCan(frame);
});
문제는 프레임을 올바르게 계산하기 위해 문서에서 플래시의 상대적 위치를 알아야한다는 것입니다. – d4rky
다음 캡처 된 X와 Y 위치 – Stefan
예, 호출 자바 스크립트 함수를 전달 예, 나는 그것에 고착 할 것입니다, 감사합니다 :) – d4rky