Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   передача URL из HTML в баннер на AS3 (http://www.flasher.ru/forum/showthread.php?t=188212)

voxa 30.11.2012 14:07

передача URL из HTML в баннер на AS3
 
Привет форумчанам.

Пытаюсь передать ссылку из HTML в баннер на AS3. Но наверное где то допустил ошибку. Пмогите пожалуйста посмотрите код.
Код AS3:

 import flash.display.Sprite;
  import flash.events.Event;
  import flash.events.MouseEvent;
  import flash.net.URLRequest;
 
 
        but.addEventListener(MouseEvent.CLICK, clicked);
        var link1:String = this.root.loaderInfo.parameters.link1;
    trace(this.loaderInfo.parameters["link1"])
 
 
        function clicked(e:MouseEvent):void {
                navigateToURL(new URLRequest("link1"));
        }


bav 30.11.2012 14:29

А ошибку какую-нибудь выдает, или просто молча не работает? Возможно поможет такая замена:
Код AS3:

var link1:String = stage.loaderInfo.parameters.link1;

Предоставьте больше информации и вам помогут быстрей. Покажите также как вы JavaScript'ом передаете flashVars.
А, погодите, у вас, похоже, кавычки лишние:
Код AS3:

navigateToURL(new URLRequest(link1));

Можно вообще так написать функцию clicked:
Код AS3:

function clicked(e:MouseEvent):void {
        var url:String = stage.loaderInfo.parameters.link1;
        if (url)
                navigateToURL(new URLRequest(url));
        else
                trace("No url.");
}


voxa 03.01.2013 20:38

Спасибо за ответы. Но дойти до рабочего варианта мне так и не удалось. Сейчас у меня на стороне браузера :
Код:

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="300" height="250" id="aff" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="C:\work\ED2.swf" />
<param name="flashvars" value="link1=http://www.youtube.com" />
<param name="quality" value="high" />
<embed src="C:\work\ED2.swf" flashvars="link1=http://www.youtube.com" quality="high"  width="300" height="250" name="aff" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>

И собственно сам екшн скрипт:

Код AS3:

import flash.display.Sprite;
  import flash.events.Event;
  import flash.events.MouseEvent;
  import flash.net.URLRequest;
 
 
        btn.addEventListener(MouseEvent.CLICK, clicked);
        var link1:String = this.root.loaderInfo.parameters.link1;
    trace(this.loaderInfo.parameters["link1"])
 
    function clicked(e:MouseEvent):void {
            var url:String = stage.loaderInfo.parameters.link1;
            if (url)
                    navigateToURL(new URLRequest(url));
            else
                    trace("No url.");
}

Если есть какие либо мысли делитесь. Заранее спасибо.

bav 03.01.2013 20:50

Для встраивания флешки в html воспользуйтесь swfobject – это облегчит вам жизнь.

Добавлено через 7 минут
А что trace в вашем коде выдает?

voxa 03.01.2013 21:06

Спасибо буду разбираться.
Да trace не нужен, убрал.

Denhell 14.04.2013 16:42

Всем привет! Похожая ситуация с AS3
В html в теге object прописываю следующий код
Код:

<param name="clickTAG" value="http://mysite.ru">
На кадр для элемента Button с instanceName url_clip вешаю следующий код

Код AS3:

url_clip.addEventListener(MouseEvent.CLICK,onReleaseMyButton);
 
function onReleaseMyButton(event:MouseEvent):void {
  var clickTAG:String = stage.loaderInfo.parameters.clickTAG;
  if (clickTAG) {
      navigateToURL(new URLRequest(clickTAG));
  }
}

В итоге не переходит по ссылке.

chamele0n 14.04.2013 16:46

так нельзя делать
Код AS3:

<param name="clickTAG" value="http://mysite.ru">

смотри как сделал товарищ выше

Добавлено через 6 минут
Цитата:

Сообщение от voxa (Сообщение 1113384)
Код AS3:

trace(this.loaderInfo.parameters["link1"]);
var url:String = stage.loaderInfo.parameters.link1;


если код написан в главном классе то пробуй просто:
Код AS3:

loaderInfo.parameters["link1"]


Denhell 14.04.2013 17:04

Изменил в html
Код:

<param name="flashvars" value="link1=http://mysite.ru">
В AS3
Код AS3:

import flash.display.Sprite;
  import flash.events.Event;
  import flash.events.MouseEvent;
  import flash.net.URLRequest;
 
url_clip.addEventListener(MouseEvent.CLICK,onReleaseMyButton);
 
function onReleaseMyButton(event:MouseEvent):void {
  var url:String = loaderInfo.parameters["link1"];
  if (url) {
      navigateToURL(new URLRequest(url));
  }
}

Все равно не хочет работать :( И еще сразу хотел спросить, как тогда еще из html передать тип _blank или _self ?

chamele0n 14.04.2013 17:11

должно работать, покажи полный html код обькта
.................
Код AS3:

navigateToURL(new URLRequest(url), '_blank');

попробуй вывести url за пределы функции
Код AS3:

import flash.display.Sprite;
  import flash.events.Event;
  import flash.events.MouseEvent;
  import flash.net.URLRequest;
 
var _url:String = loaderInfo.parameters["link1"];
 
url_clip.addEventListener(MouseEvent.CLICK,onReleaseMyButton);
 
function onReleaseMyButton(event:MouseEvent):void {
 
  if (_url) {
      navigateToURL(new URLRequest(_url));
  }
}


Denhell 14.04.2013 17:18

Вынес за функцию все равно :(
Вот полный html
Код:

                        <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="240" height="400" id="240x400" align="middle">
                                <param name="movie" value="240x400.swf" />
                                <param name="quality" value="high" />
                                <param name="bgcolor" value="#ffffff" />
                                <param name="play" value="true" />
                                <param name="loop" value="true" />
                                <param name="wmode" value="window" />
                                <param name="scale" value="showall" />
                                <param name="menu" value="true" />
                                <param name="devicefont" value="false" />
                                <param name="salign" value="" />
                                <param name="allowScriptAccess" value="sameDomain" />
                                <param name="flashvars" value="link1=http://mysite.ru">

                                <!--[if !IE]>-->
                                <object type="application/x-shockwave-flash" data="240x400.swf" width="240" height="400">
                                        <param name="movie" value="240x400.swf" />
                                        <param name="quality" value="high" />
                                        <param name="bgcolor" value="#ffffff" />
                                        <param name="play" value="true" />
                                        <param name="loop" value="true" />
                                        <param name="wmode" value="window" />
                                        <param name="scale" value="showall" />
                                        <param name="menu" value="true" />
                                        <param name="devicefont" value="false" />
                                        <param name="salign" value="" />
                                        <param name="allowScriptAccess" value="sameDomain" />
                                        <param name="flashvars" value="link1=http://mysite.ru">
                                <!--<![endif]-->
                                        <a href="http://www.adobe.com/go/getflash">
                                                <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
                                        </a>
                                <!--[if !IE]>-->
                                </object>
                                <!--<![endif]-->
                        </object>



Часовой пояс GMT +4, время: 15:35.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.