Autor Zpráva
kujeba
Profil
Dobrý den,
mám projekt, kde do bloku vkládám bannery, odkazující ven z projektu na externí URL. Potřebuji zaznamenávat prokliky na bannery a jediný stabilní prvek v hierarchii je onen blok, ve kterém může být zapouzdřen jak klasický link, tak swf objekt s clickthru, tak third party JS, který do onoho bloku napumpuje mnou zcela nepředvídatelný obsah.

Když si napíšu událost

$('div.advertisement div.item').click(function(evt){
        var className = $(this).prop('class');
        alert(className);
        return false;
    });

tak je událost ignorována a provede se událost spojená s vloženým elementem (link, object).

Můžete mi, prosím, poradit jak toto vyřešit? Google už jsem zkoušel, ale relevantní nápovědu jsem nezískal.

Díky.
Chamurappi
Profil
Reaguji na kujebu:
Pokud je banner tvořený odkazem s obrázkem, nebo nějakou jinou obyčejnou náplní stávajícího DOMu, půjde chytit událost na rodiči (nezabrání-li tomu aktivně skript na potomkovi).
Pokud je banner tvořený flashem s wmode="transpanrent" nebo "opaque", šlo by ho překrýt něčím, na čem bys událost chytil, ale měl bys asi hodně velký problém s předáním kliku zpátky dovnitř flashe.
Pokud je banner tvořený <iframe>m načítaným z téže domény, můžeš chytat kliky v dokumentu načteném uvnitř něj.
Pokud je banner tvořený flashem bez wmode, nebo <iframe>m načítaným z cizí domény, nemáš žádnou šanci.

Většina reklamních ekosystémů je stavěná tak, že se cílová adresa reklamy předává do banneru jako parametr (u flashů nejnázorněji přes ten clickthru), takže jediná universální a zároveň velmi účinná metoda počítání prokliků je nahradit cílovou adresu vlastním počítacím přesměrováním na cílovou adresu.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: