FlashDvelop проблема с публикацией

Я создал простой флэш-объект для перенаправления браузера на другую веб-страницу с помощью "navigatetoURL", получая при этом URL-адрес от внешних вызовов интерфейса к javascript, который имеет страница, выполняющая вставку файла флэш-памяти.

Я в состоянии собрать все просто отлично, и HTML-страница, которую я создал (используя swfobject.embedSWF для встраивания флэш-файла), работает нормально и перенаправляет браузер. Однако, когда я перемещаю файлы, необходимые для того, чтобы все функционировало (файл.swf, swfobject.js и html-файл, содержащий объект flash), веб-страница больше не перенаправляется. Отображается только пустое пространство, которое выглядит как флэш-объект, и ничего не перенаправляется.

Есть ли какая-либо опция компиляции во Flashdevelop, которую я пропускаю, чтобы не исправить это?

Вот код actioncript 3:

package 
{
 import flash.display.Sprite;
 import flash.events.Event;
 import flash.net.navigateToURL;
 import flash.net.URLRequest;
 import flash.net.URLVariables;
 import flash.external.ExternalInterface;

public class FlashTest extends Sprite
{
 public function FlashTest()
 {
    var url:String = ExternalInterface.call("GetURL");
    var hash:String = ExternalInterface.call("GetHash");
    var new_url:String = url + hash;
    var request:URLRequest = new URLRequest(new_url);
    navigateToURL(request, "_self");

 }
}
}

HTML-код:

<html>
<head>

<script src='js/swfobject.js' type='text/javascript'></script>
<script type='text/javascript'>
swfobject.embedSWF('Flashtest.swf', 'altContent', '100%', '100%', '10.0.0');
function GetURL()
{
   return 'http://www.cnn.com';
}

function GetHash()
{
  return '?hash=2398asb9s8234';
}

</script>
</head>
<body>
<div id='altContent'>
<h1>Flash_test</h1>
<p>Alternative content</p>
<p><a href='http://www.adobe.com/go/getflashplayer'><img 
src='http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif' 
alt='Get Adobe Flash player' /></a></p>
</div>
</body>
</html>

2 ответа

На самом деле, у меня были проблемы с запуском SWF до того, как они были добавлены в HTML DOM и / или до того, как DOM был готов. Взгляните на собственную статью Adobes на ExternalInterface.call и javascript isReady. Я также хотел бы взглянуть на параметр allowScriptAccess:

<script type="text/javascript">
   var so = new SWFObject("movie.swf", "mymovie", "400", "200", "8", "#336699");
   so.addVariable("allowScriptAccess", "always");
   so.write("flashcontent");
</script>

На самом деле это проблема безопасности флеш-плеера. Если вы переместите файлы из папки bin и запустите их локально, они больше не будут работать.

Каждый раз, когда вы создаете проект в flashdevelop, папка "bin" добавляется в список исключений flash player. Если вы переместите файлы в другую папку, они больше не будут работать, поэтому при открытии HTML-кода в браузере появится пустая страница.

Решение состоит в том, чтобы вручную изменить конфигурационный файл безопасности флэш-плеера и добавить новый путь или посетить страницу: http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html Нажмите "Глобальные параметры безопасности"> Всегда разрешать> Редактировать ocations > Добавить местоположение> Найдите новый путь, где находятся файлы.

Другие вопросы по тегам