下面的JavaScript中類似:如何手動觸發actionscript/flex3中的點擊事件?
<input id="target" type="button" onclick="..." />
<script>
document.getElementById('target').click();
</script>
下面的JavaScript中類似:如何手動觸發actionscript/flex3中的點擊事件?
<input id="target" type="button" onclick="..." />
<script>
document.getElementById('target').click();
</script>
您可以使用dispatchEvent功能: http://livedocs.adobe.com/flex/3/html/help.html?content=events_07.html
您應該創建點擊事件事件的新實例之前發射
package
{
import flash.display.DisplayObject;
import flash.events.MouseEvent;
public class ClickEventExample
{
public static function dispatchClickEventFrom(something:DisplayObject):void
{
something.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
}
}
是什麼這點呢?我會建議在這種情況下使用自定義事件,所以你不要混淆MouseEvent.CLICK
不代表點擊。
當在您的剪輯用戶至上滾動,這應該讓你開始:
myClip.addEventListener(MouseEvent.ROLL_OVER, handleFirstMouseOver);
function handleFirstMouseOver(e:MouseEvent) : void
{
dispatchEvent(new Event('mySpecialEvent', true));
myClip.removeEventListener(MouseEvent.ROLL_OVER, handleMouseOver);
}
如果(我不是假設你是:))您試圖假冒點擊來解決彈出窗口阻止程序或進入全屏模式等等,然後再想一想,因爲玩家會認識到這些事件實際上並不是從用戶輸入中產生的。
感謝您的評論,但很抱歉,我現在對問題進行了一些修改,即:如何在按鈕狀態切換爲啓用**第一次**時手動調度單擊事件? – arr 2010-11-17 02:49:09
1)爲此,您必須編寫一些代碼來跟蹤第一次啓用按鈕。 2)當你說啓用你的意思是當鼠標移過它時?如果是的話,那麼訂閱mouseover事件並編寫代碼來檢查第一次並觸發事件,如果3)您指的是按鈕控件的啓用屬性,您必須在任何地方啓用它並且啓動它事件 – 2010-11-17 02:58:07