# Loading external SWF problem on Safari

**URL:** <https://forum.kirupa.com/t/loading-external-swf-problem-on-safari/319684>\
**Category:** Uncategorized\
**Created:** [March 1, 2011, 7:03pm UTC](https://forum.kirupa.com/t/loading-external-swf-problem-on-safari/319684 "2011-03-01T19:03:24Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![outback](https://avatars.discourse-cdn.com/v4/letter/o/9f8e36/32.png) [@outback](https://forum.kirupa.com/u/outback)\
**Post date:** [March 1, 2011, 7:03pm UTC](https://forum.kirupa.com/t/loading-external-swf-problem-on-safari/319684/1 "2011-03-01T19:03:24Z")

</div>

Hi all,

I’m working on a project where I have 3 options of SWF to be loaded according to the URL parameter.

// this code is for the parameters

```auto
package
{
    import flash.external.*;
 
    public class QueryString
    {
        private var _queryString:String;
        private var _all:String;
        private var _params:Object;
 
        public function QueryString(url:String='')
        {
            readQueryString(url);
        }
        public function get getQueryString():String
        {
            return _queryString;
        }
        public function get url():String
        {
            return _all;
        }
        public function get parameters():Object
        {
            return _params;
        }        
 
        private function readQueryString(url:String=''):void
        {
            _params = new Object();
            try
            {
                _all = (url.length > 0) ? url : ExternalInterface.call("window.location.href.toString");
                _queryString = (url.length > 0) ? url.split("?")[1] : ExternalInterface.call("window.location.search.substring", 1);
                if(_queryString)
                {
                    var allParams:Array = _queryString.split('&');
                    //var length:uint = params.length;
 
                    for(var i:int=0, index=-1; i < allParams.length; i++)
                    {
                        var keyValuePair:String = allParams*;
                        if((index = keyValuePair.indexOf("=")) > 0)
                        {
                            var paramKey:String = keyValuePair.substring(0,index);
                            var paramValue:String = keyValuePair.substring(index+1);
                            _params[paramKey] = paramValue;
                        }
                    }
                }
            }
            catch(e:Error)
            {
                trace("sem parametros para ler!");
            }
        }
    }
}

```

// i’m using this code to open the external SWF

```auto
import flash.display.Loader;
import flash.net.URLRequest; 
import flash.external.ExternalInterface;

var urlNavegador = ExternalInterface.call ( "window.location.search.toString") 

var meuCaminho:QueryString = new QueryString(urlNavegador);

var loadPlayer = new Loader;
addChild (loadPlayer); 

if (meuCaminho.parameters.intro == "sm") {
    loadPlayer.load ( new URLRequest ("introSM.swf"));
}
if (meuCaminho.parameters.intro == "colecao") {
    loadPlayer.load ( new URLRequest ("introSerProtagonista.swf"));
}
if (meuCaminho.parameters.intro == "anima") {
    loadPlayer.load ( new URLRequest ("main.swf"));
}

```

this works great o Firefox but when I test it on Safari it doesn’t work any ideias?
