簡體   English   中英

如何檢測鼠標何時在Flash電影的HTML層上方?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM