Флэш-баннерная реклама - PullRequest
0 голосов
/ 27 мая 2011

В основном на своей работе я делаю флеш-баннеры.Часто я буду использовать MediaMind или DoubleClick , однако, очевидно, мне иногда приходится разрабатывать рекламу, чтобы удовлетворить требования некоторых издателей, таких как NineMSN и Yahoo!

Каждый из них имеет разные спецификации для своего clickTag.ClickTag - это просто имя переменной, которая анализируется во flashvars и содержит URL перехода по клику, когда люди нажимают на рекламу.

Вот некоторые из них:

clickTag
clickTAG
_root.clickTag
_level0.clickTag

И любая комбинация вышеперечисленного (например, другой корпус и т. Д.).

Я решил, что _root и _level0 не нужны, поэтому я их удалил.Затем один из издателей взорвал меня, сказав, что clickTag был неправильным (потому что я удалил _root спереди).Она использовала какой-то онлайн-инструмент, который позволял им просматривать ActionScript, примененный к кнопке, они фактически не проверяли рекламу в своей системе, чтобы увидеть, работает ли она.

Итак, вопрос 1 : Я почти уверен, что _root.var, _level0.var и var - это одно и то же (очевидно, из _root / основной временной шкалы).Если, возможно, он не может быть проанализирован через flashvars таким образом, чтобы переменная была доступна только через _level0 или _root (насколько я знаю, вы не можете сделать это).

Вопрос 2: Еще одна вещь, на которую я обратил внимание, - это применение щелчка на временной шкале, а не непосредственно к самой кнопке (я ненавижу размещать любой код непосредственно на объектах).Вот так:

btn.onRelease = function():Void
{
    getURL(clickTag, "_blank");
}

Вместо того, чтобы поместить это на саму кнопку:

on(release)
{
    getURL(clickTag, "_blank");
}

Я не вижу, как здесь может быть разница, или есть?

Мой последний вопрос : я потратил час на создание 12 копий объявлений трех разных размеров в двух разных стилях, чтобы применить соответствующий тег clickTag к каждому из баннеров и отправить его непосредственно издателям.Почему я не могу просто создать один супер-клик-тег, как этот?

var clicktags:Array = [clickTag, clickTAG, uncommonClickTag];
btn.onRelease = function():Void
{
    var i:Number = 0;
    for(i; i<clicktags.length; i++)
    {
        var s:String = clicktags[i];

        if(s != undefined)
        {
            getURL(s, "_blank");
            break;
        }
    }
}

Ответы [ 3 ]

3 голосов
/ 30 мая 2011

Вопрос 1: Вы совершенно правы, и ваш коллега по издательству ошибается, однако она (работает) на руководителя и, вероятно, не обладает пониманием, необходимым для принятия вашего решения. Для нее безопаснее провести баннер через какой-нибудь непрозрачный инструмент и получить одобрение, тогда как это определенно «раскачивает лодку», чтобы попросить своего босса принять ваши идеально сформированные «неровности».

Кроме того, можете ли вы быть абсолютно уверены, что ваш баннер не будет загружен в другой swf (нарушающий код _rootless)? Возможно, вряд ли, но если что-то может пойти не так ...

И, наконец, вопрос 3 делает все это спорным, как вы увидите. Да, вы действительно можете сделать что-то вроде своего фрагмента кода, но вам придется использовать строки для имен flashvar и выполнить неопределенный тест для значения тега, полученного из _root [flashVarNameString], следующим образом:

var clicktags:Array = ["clickTag", "clickTAG", "uncommonClickTag"];
btn.onRelease = function():Void
{
    var i:Number;
    for(i; i<clicktags.length; i++)
        {
        var s:String = clicktags[i];
        var tagVal:String = _root[s];

        if(tagVal != undefined)
            {
                getURL(s, "_blank");
                break;
            }
        }
    }
0 голосов
/ 21 февраля 2014

По моему опыту, следующий фрагмент работает для нескольких переменных имен тегов кликов и намного короче и проще:

btn.onRelease = function():Void
{
    var url = (_root.ClickTag || _root.clickTag || _root.clicktag || _root.clickTAG || _root.ClickTAG);
    if (url.substr(0,4) == "http") {
        getURL(url, "_blank");
    }
}

Тот же код можно использовать для экземпляра кнопки:

on (release)
{
    var url = (_root.ClickTag || _root.clickTag || _root.clicktag || _root.clickTAG || _root.ClickTAG);
    if (url.substr(0,4) == "http") {
        getURL(url, "_blank");
    }
}

Я никогда не говорю об этом своим клиентам или руководителям проектов только потому, что они не понимают.

0 голосов
/ 13 августа 2011

Более того, ваш последний фрагмент кода, который ищет различные теги кликов, может также не дать бедной девочке одобрения из ее инструмента проверки баннеров (говорит из опыта!; O)).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...