[英]How to detect when mouse is over HTML layer over Flash movie?
我有一個嵌入在HTML頁面中的Flash電影,該HTML頁面在電影頂部的一層中具有DIV。 Flash影片根據鼠標在影片上的位置滾動。 客戶端希望在鼠標懸停在DIV上時停止滾動。 我嘗試使用mouseLeave事件,但這不是由DIV觸發的。
有沒有一種方法可以使Flash電影在鼠標懸停在DIV上時進行檢測?
Flash電影是使用Flash CS4和AS3開發的。
這是DIV標簽:
<div style="position:absolute;top:0;left:0;width:1024;background:#fff;font-size:24px;z-order:2">
some text
</div>
MOUSE_LEAVE事件不起作用,因為即使鼠標位於div上,它仍在SWF的邊界區域內。 您必須在Flash中使用ExternalInterface來注冊一個可用於javascript的函數,然后當鼠標懸停在div上時調用該函數。 Flash功能會關閉滾動。
在Flash中:
import flash.external.ExternalInterface;
function stopScrolling() {
// stop scrolling
}
ExternalInterface.addCallback('stopFlashScrolling', stopScrolling);
用Javascript:
document.getElementById('theDiv').onmouseover = function(e) {
MySWF.stopFlashScrolling();
}
MySWF是您的SWF的ID。
Flash電影(通常)始終具有最高的z索引。 您是否嘗試添加:
<param name="wmode" value="transparent">
您的嵌入代碼?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.