Quantcast
Channel: Adobe Community: Message List
Viewing all articles
Browse latest Browse all 87055

Weird click event on loaded SWF

$
0
0

Hi, recently I'm working on a project to parse and show the VAST3 ad. One thing I need to do is listen for the MouseEvent.CLICK on the loaded SWF file.

I added the loader to a sprite and add the event listener on the sprite. When I load the following SWF file, the click event fires only when I click the background. If I click on the site logo, no click event happens.

If I downloaded the SWF file to my local hard drive, everything works fine. The click event can be fired wherever I click on the ad.

The SWF that I load has all the assets embedded.

I want to find out what's causing this problem because with some SWF files I can only listen to the MouseEvent.CLICK event on the _loader.content whereas some like the one below, partially responds to click event on _loader.content and _container.

I simplified the code as listed below.

package  {    import flash.display.Loader;    import flash.display.Sprite;    import flash.events.MouseEvent;    import flash.events.Event;    import flash.net.URLRequest;      public class Main extends Sprite {        private var _container:Sprite;        private var _loader:Loader;        public function Main() {            _container = new Sprite();                      _loader = new Loader();            _loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);            _loader.load(new URLRequest("http://gtms04.alicdn.com/tps/i4/TB1Fzd.FVXXXXaOXXXXeflbFXXX.swf"));                      _container.addEventListener(MouseEvent.CLICK, onClicked);            addChild(_container);        }              private function onComplete(event:Event):void {            _container.addChild(_loader);            _loader.content.addEventListener(MouseEvent.CLICK, loadedSwfClicked);        }              private function loadedSwfClicked(event:MouseEvent):void {            trace("loaded swf clicked"); // When I click on the Logo and the animal        }              private function onClicked(event:MouseEvent):void {            trace("clicked"); // When I click on the gradient background        }    }
}

Viewing all articles
Browse latest Browse all 87055

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>