| |||||||||||||||||||||||
Технические требованияFlash баннер1. Карточка баннераРекомендуется использовать код вызова poster только в случае необходимости показывать баннер при доскролле до баннерного места, так как данная технология задерживает загрузку баннера до окончания загрузки основной страницы. В остальных случаях рекомендуется использовать код вызова extension. 2. Подготовка баннераПодготовьте два варианта flash-баннера: flash-ролик (.swf) и заглушку .gif или .jpeg, чтобы демонстрировать её тем посетителям сайта, у которых нет необходимой версии flash-плагина. При создании flash-ролика в первом кадре пропишите следующие команды:
if(ar_init == undefined){
ar_init = true;
System.security.allowDomain('*');
}
System.security.allowDomain('*') разрешает доступ загрузчику к переменным баннера и позволяет правильно инициализировать переменную для клика (link1). При этом в загрузчике не нужно специально разрешать доступ для загружаемых роликов. Для того, чтобы зарегистрировать событие «клик» создайте элемент button (при наведении курсора мыши на такой элемент, он изменяется). Для того, чтобы перейти по клику используется функция getURL. Ей передаётся два параметра: куда переходить — переменная link1 и _blank — значение переменной target, чтобы открывать ссылку баннера в новом окне. В вашем flash-ролике сделайте элемент button. Для этого элемента напишите следующий код: on (release) {
getURL(_root.link1, "_blank");
}
Обязательно используйте переменную link1 для подсчёта кликов. Для того, чтобы открывать ссылку баннера в том же окне, укажите во flash-ролике _top. Если вы, как рекламная площадка, используете AdRiver в качестве основной системы управления рекламой на сайте, то в flash-ролике пропишите скрипт:
on (release) {
getURL(_root.link1, _root.target);
}
Это позволит открывать ссылку баннера согласно тому параметру, который указан в коде рекламного места. Элементов типа button может быть несколько. В зависимости от того, на какой из элементов кликнули, посетитель может быть направлен на разные адреса. В этом случае вы можете явно указать, на какой адрес должен быть направлен посетитель. Обязательно кодируйте адрес функцией escape(). Например: on (release) {
getURL(_root.link1+escape("http://alternative.url.to.go/path?search#hash"),_root.target);
}
Если вы хотите подгружать в flash-ролик дополнительные части, загруженные в баннер, то надо дописать к имени подгружаемого компонента перeменную _root.ar_comppath. Например: _root.ar_comppath + 'flash_name.swf' 2.1 Баннеры, сделанные в ActionScript 3В ActionScript 3 для элемента button пропишите следующий скрипт:
function callLink(event:MouseEvent):void {
var url:String = LoaderInfo(this.root.loaderInfo).parameters['link1'];
try {
var ie:String = ExternalInterface.call("function(){return !!window.ActiveXObject}");
if(ie)ExternalInterface.call('window.open',url);
else navigateToURL(new URLRequest(url), '_blank');
}catch (e:Error){
navigateToURL(new URLRequest(url), '_blank');
}
}
click_button.addEventListener(MouseEvent.CLICK, callLink)
Размер загружаемых файлов должен соответствовать спецификации. Если элементов типа button несколько, то посетитель может быть направлен на разные адреса в зависимости от того, на какой из элементов кликнули. В этом случае вы можете явно указать, на какой адрес должен быть направлен посетитель. Обязательно кодируйте адрес функцией escape(). Пример кода на ActionScript3:
function callLink(event:MouseEvent):void {
var url:String = LoaderInfo(this.root.loaderInfo).parameters['link1'];
var alt_url= escape("http://alternative.url.to.go/path?search#hash");
try {
var ie:String = ExternalInterface.call("function(){return !!window.ActiveXObject}");
if(ie)ExternalInterface.call('window.open',url+alt_url);
else navigateToURL(new URLRequest(url+alt_url), '_blank');
}catch (e:Error){
navigateToURL(new URLRequest(url+alt_url), '_blank');
}
}
click_btn.addEventListener(MouseEvent.CLICK, callLink);
2.2. Прошивка кнопки на клик для учёта кликов одновременно в AdRiver и сторонней системеВ коде вызова баннера в параметре pass укажите ссылку на сторонний счетчик для учёта кликов. Для элемента button в flash-ролике пропишите следующий скрипт:
on(release){
if (_root.ar_pass){
var temp_mc = _root.createEmptyMovieClip("temp_mc", _root.getNextHighestDepth());
temp_mc._x = -10000;
var mcLoader = new MovieClipLoader();
mcLoader.addListener({onLoadInit:function(mc:MovieClip){
mcLoader.unloadClip(mc);
}});
mcLoader.loadClip(_root.ar_pass, temp_mc);
}
getURL(_root.link1, _root.target)
}
В ActionScript 3 для элемента button пропишите следующий скрипт:
var timer:Timer;
function callLink(event:MouseEvent):void
{
var pass:String = LoaderInfo(this.root.loaderInfo).parameters['ar_pass'];
if(pass&&pass!="undefined") (new Loader()).load(new URLRequest(pass));
timer = new Timer(300,1);
timer.addEventListener(TimerEvent.TIMER_COMPLETE,navigate)
timer.start();
}
function navigate(e:TimerEvent):void {
timer.stop();
var url:String = LoaderInfo(this.root.loaderInfo).parameters['link1'];
try {
var ie:String = ExternalInterface.call("function(){return !!window.ActiveXObject}");
if(ie)ExternalInterface.call('window.open',url);
else navigateToURL(new URLRequest(url), '_blank');
}catch (e:Error){
navigateToURL(new URLRequest(url), '_blank');
}
}
click_btn.addEventListener(MouseEvent.CLICK, callLink);
3. Загрузка flash-баннера на коде ajax
4. Полезные ссылки
5. Проверка простых flash-роликов на соответствие техническим требованиямПоследнее обновление: 28.09.2011
|
|||||||||||||||||||||||
| |||||||||||||||||||||||