login  Naam:   Wachtwoord: 
Registreer je!
 Tutorials

Tutorials > Flash


Gegevens:
Geschreven door:
vinTage
Moeilijkheidsgraad:
Normaal
Hits:
18706
Punten:
Aantal punten:
 (4.7)
Aantal stemmen:
10
Stem:
Niet ingelogd
Nota's:
 Lees de nota's (4)
 

Tutorial:

flash popups

Flash reclame popup
Wie kent ze niet, die mega irritante flash popups, die over de web pagina heenkomen, en pas na een klik op de "close knop" of na bepaalde tijd weer verdwijnen?
Iedere surfer loopt er wel eens tegenaan, en in deze tutorial wil ik jullie gaan uitleggen hoe je die vreselijke dingen zelf kan maken.
Voor de mensen die NIET weten wat ik bedoel check mijn "voorbeeldje"

We maken in deze tutorial gebruik van


Een transparante popup maken.

Wat je nodig hebt, is natuurlijk een reclame popup, deze moet natuurlijk wel een stukje mooier/spectaculairder hoort te zijn dan een ordinaire jpg reclame banner.
Voor deze flash popup moeten we de html op een iets andere manier publishen dat dat je gewend bent, je moet hier namelijk gebruik maken van "transparantie".
Om met transparantie te publishen klik je (ctrl+shift+f12) en op het tabblad "html", kies je bij Window Mode "Transparent Windowless".
Transparantie meegeven aan de swf, zorgt ervoor dat alles wat niet echt is getekend in flash ook niet getoond word, bijvoorbeeld de bg(kleur).
Mocht het zo zijn dat je niet de beschikking hebt over de FLA, dan kan je de transparatie alsnog heel simpel zelf ingeven door in de html de volgende regel bij het flash object te zetten: <param name="wmode" value="transparent" />


.

<top>
De popup laten zien/verdwijnen in de html.

De popup kan je op verschillende manieren uit beeld halen, bijvoorbeeld door je swf te laten redirecten naar een andere html waarin die popup niet zit ingebouwd.
In flash kan je een redirect doen door getUrl("http://www.jouSiteZonderPopup.com", "_self") in het laatste keyframe te zetten.

Een andere manier (die ik zelf wel heel mooi vind) is door middel van een javascript de layer te verbergen waarin onze popup zit.
Met flash kan je ook javascript activeren door middel van "getUrl".
Met onderstaande javascriptje zal ik uitleggen hoe mijn voorbeeldje werkt.

<SCRIPT LANGUAGE="JavaScript">
<!-- Original: Gregor (legreg@legreg.de) -->

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
var ie4 = (document.all) ? true : false;

var ns4 = (document.layers) ? true : false;

var ns6 = (document.getElementById && !document.all) ? true : false;

function hidelayer(lay) {
if (ie4) {document.all[lay].style.visibility = "hidden";}

if (ns4) {document.layers[lay].visibility = "hide";}

if (ns6) {document.getElementById([lay]).style.display = "none";}

}
function showlayer(lay) {
if (ie4) {document.all[lay].style.visibility = "visible";}

if (ns4) {document.layers[lay].visibility = "show";}

if (ns6) {document.getElementById([lay]).style.display = "block";}

}
function writetolayer(lay,txt) {
if (ie4) {

document.all[lay].innerHTML = txt;
}
if (ns4) {

document[lay].document.write(txt);
document[lay].document.close();

}
if (ns6) {
over = document.getElementById([lay]);

range = document.createRange();
range.setStartBefore(over);

domfrag = range.createContextualFragment(txt);
while (over.hasChildNodes()) {

over.removeChild(over.lastChild);
}
over.appendChild(domfrag);

}
}
// End -->
</script>

Dit stukje javascript hoort tussen de header tags van de pagina waarin je de popup wilt.
In de body maak je een nieuwe layer aan.

<SPAN ID="newlayer" style="position:absolute;">
<!--hier je swf met transparantie -->
</SPAN>

Door nu in het laatste keyframe van je flash getURL("javascript:hidelayer('newlayer');"); te zetten, wordt die layer met de flash erin verstopt na het laatste keyframe.

<top>
"iets" klantvriendelijkere popup.

De sites die hun vaste bezoekers niet met popups willen blijven bestoken zouden een cookie kunnen inbouwen in de popup.
Dit heb ik ook gedaan in mijn voorbeeldje, bij dit voorbeeldje krijgt de bezoeker slechts éénmaal de popup te zien.
Ik heb dat als volgt gedaan:

  • 1: In keyframe 1staat een stop, en er word gekeken of er een cookie is, verder is die keyframe leeg..
  • 2: Als er wél een cookie is, laat de swf de volgende AS uitvoeren getURL("javascript:hidelayer('newlayer');");.
  • 3: Als er géén cookie is, laat dan de swf verder afspelen.

Om het verhaaltje van hierboven iets duidelijker te maken, heb ik hier een zipje staan, met daarin alle door mij gebruikte files.

Meer informatie over flash en cookies vind je hier.

Mocht deze tutorial nog niet helemaal voldoen aan je verwachting, bezoek dan mijn website voor een eventuele geupdate tutorial. mvg vinTage



« Vorige tutorial : flash cookies Volgende tutorial : Flash advanced mail »

© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.014s