Просмотр полной версии : Ссылка из двух частей
Возможно ли разделить ссылку во флеш баннере на две части. Т.е. первая часть прописывается статично, а вторая часть бралась из хтмл и получалась одна ссылка по которой будет открываться окно? Если можно с примером кода. надо что бы в хтмл коде юзер указывал нужную ему переменную... и она ставилась в конце зашитой в флешку ссылки. Суть: защитить флеш баннер от размещения на сайтах и использования в личных целях другими сайтами.
т.е. есть
on (release) {
getURL("http://123"), "_self");
}
в хтмл нужно задать <param name="FlashVars" value="bannerLink=456.ru">
В итоге должна открыться ссылка http://123456.ru
Как сие реализовать?
В скриптах не силен, так что буду благодарен за пример с куском кода.
Заранее благодарю за помощь.
Не пишите код на объектах.
btn.onRelease = function()
{
getURL('http://123' + bannerLink, '_self');
};
Обычная конкатенация строк.
блин, не получается. пишет в барузере http://123undefined/
Делаю так: в первом фрейме пишу
btn.onRelease = function()
{
getURL('http://123' + bannerLink, '_self');
};
в хтмл добавляю строку <param name="FlashVars" value="bannerLink=456.ru">
Что не так? Объект кнопка нужна вообще? Без нее ничего не кликается. Можете скинуть исходник с кодом?
btn.onRelease = function()
{
getURL('http://123' + _root.bannerLink, '_self');
};
Попробуйте так.
red123, а вы в <embed> случайно не забыли добавить flashVars ?
попробовал btn.onRelease = function()
{
getURL('http://123' + _root.bannerLink, '_self');
};
***, тоже самое "http://123undefined/"
сделал мувик btn, прямо в нем прописал скрипт который выше.
сделал мувик btn, прямо в нем прописал скрипт который выше.
Этот код надо писать в кадре главного таймлайна, а кнопка на сцене должна называться btn (вводится в поле Instance name, имя экземпляра).
Про <embed> я уже писал.
И вот еще что. Мат, даже завуалированный, на форуме вне закона, будьте внимательны.
именно так сделал.
код хтмл <object
classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,42,0"
id="proba_ssilki2"
width="160" height="600"
>
<param name="movie" value="proba_ssilki2.swf">
<param name="bgcolor" value="#FFFFFF">
<param name="quality" value="high">
<param name="seamlesstabbing" value="false">
<param name="allowscriptaccess" value="samedomain">
<param name="FlashVars" value="bannerLink=456.ru">
<embed
type="application/x-shockwave-flash"
pluginspage="http://www.adobe.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
name="proba_ssilki2"
width="160" height="600"
src="proba_ssilki2.swf"
bgcolor="#FFFFFF"
quality="high"
seamlesstabbing="false"
allowscriptaccess="samedomain"
>
<noembed>
</noembed>
</embed>
Добавлено через 29 минут
А можно через переменную какнить? ченить типа
var link = 'http://site.ru'+_root.bannerLink;
btn.onRelease = function(){
getURL(link, "_self");
}
}
Но ИМЕННО так не работает, может доработать можно?
Держите рабочий пример.
Там для публикации используется SWFObject, с ним удобнее.
Все работает (но дело, конечно, не в использовании SWFObject, у вас все же где-то ошибка была).
Держите рабочий пример.
Там для публикации используется SWFObject, с ним удобнее.
Все работает (но дело, конечно, не в использовании SWFObject, у вас все же где-то ошибка была).
Огромное спасибо за пример. Вижу что все работает с SWFObject, но без него (с обычным хтмл) НЕ работает. Возможно обойти эту проблему?
Я же упомянул, что дело не в SWFObject. SWFObject просто удобен для публикации.
FlashVars'ы нормально работают и с ручным внедрением флешки в странице. Просто у вас где-то сидит ошибка - может в публикации, может в SWF-ке. Ее искать, рисуя вам пример, смысла не увидел, давно не мучаюсь с кучей параметров публикации, просто использую эту библиотеку. И вам советую, это давно стандарт де-факто.
Стоп. Я только что присмотрелся к вашему HTML (http://www.flasher.ru/forum/showpost.php?p=1094954&postcount=8).
1. У вас в коде публикации я не вижу атрибута flashVars в теге <embed>, я же упоминал об этом два раза. Много браузеров ничего не узнаёт про flashVars.
2. И еще - а где у тега <object> закрывающий слэш?
У вас там каша какая-то.
во флеше все ок. Пробовал подкидывать свою флешку и использовать ваш хтмл, ну естественно в хтмл переименовал имя флешки. Дело в хтмл... может глянете, а ?
См. пост выше.
Обычно используется такая структура:
<object attr1="... " attr2="" ....>
<param name=".." value="...">
<param name=".." value="...">
<embed attr1="" attr2="" .... />
</object>
ок. буду копать хтмл
закрывающий </object> там есть ниже, просто кусок кода скопировал не до конца
А вот это <param name="FlashVars" value="bannerLink=456.ru"> я так понял нужно ставить после <embed>? думал будет достаточно просто его втавить там где у меня сейчас стоит. Просто не особо шарю в скриптах AS и в хтмл, в основном дизайн. Ок. спасибо что внесли ясность. Плюсанул к рейтингу
Не после! FlashVars надо использовать И в <object> как параметр, И в <embed> как атрибут (типа flashVars="bannerLink=456.ru"). Вот вам головная боль.
Насчет SWFObject повторяться не стану, но имейте ввиду, если вы имеете доступ к HTML и к файлам хостинга, избавляйтесь от ручного кропотливого <object> и <embed> на странице.
ок. спс. за совет, но баннер планируется к размещению на многих страницах а уж как там он будет размещаться с SWFObject или без него это не мне решать. От меня требовалось только зашить первую половину ссылки а чтобы вторая бралась с хтмл, т.к. повторюсь шарю не очень в кодах, всю голову сломал и все перепробовал. Теперь дам наводку тому кто занимается хтмл чтобы избавиться от SWFObject т.к. заливка дополнителых файлов не желательна
С тегом embed, если мне память не изменяет, проблема преувеличена. embed вообще в стандарт не входит, и использовался только для фикса каких-то старых версий Сафари, что ли. На сегодня это вообще неактуальная проблема, все понимают object. и SWFObject просто по накатанной использует сложную конструкцию. Ибо зачем менять, если все и так работает.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.