Problem bei einem Javascript :)

Z

zerowebmaster

Guest
Hallo Leute ,

ich hab ein kleines Problem bei einem Javascript ....

mein Problem ist nähmlich dass wenn man auf meine Homepage geht, kommt da halt ein Banner wo man draufklicken kann und für uns voten kann ... schön und gut das ganze aber wenn man auf "Remind me after 10 Minutes" klickt sollte es ja erst nach 10 min wieder erscheinen nur kommt das banner immer wenn man die seite aktualisert .... und ich möchte dass man einmal auf das "remind me after 10 minutes" klckt auch wirklich nach 10 minuten erscheint und nicht bei jedem refresh der HP ....

hier der Javascript :


QUOTE <script type='text/javascript'>
var voteImage = new Asset.image('http://i223.photobucket.com/albums/dd34/aether666/banner.gif');
var voteLinks = ['http://www.meinedomain/pages.php?id=vote'];
var voteNr = 1;

var hiddenNodes = new Array();

window.addEvent('load', function(){
if(window.ie){
$$('select').each(function(el){
hiddenNodes.push(el);
el.setStyle('visibility', 'hidden');
});
}

var blackLayer = new Element('div', {
'styles': {
'position': 'absolute',
'top': '0px',
'left': '0px',
'width': window.getScrollWidth(),
'height': window.getScrollHeight(),
'background-color': '#000000',
'opacity': 0.7,
'z-index': 99998
}
}).injectInside(document.body);

var voteContainer = new Element('div', {
'styles': {
'position': 'absolute',
'top': ( window.getScrollTop() + ( window.getHeight() - voteImage.height ) / 2 ),
'left': ( window.getScrollLeft() + ( window.getWidth() - voteImage.width ) / 2 ),
'width': voteImage.width,
'background-color': '#000000',
'z-index': 99999
}
}).injectInside(document.body);

var voteLink = new Element('a', {
'href': voteLinks[voteNr - 1],
'target': '_blank'
}).injectInside(voteContainer);
voteImage.setStyle('border', '1px solid #FFFFFF').injectInside(voteLink);

var voteNumber = new Element('div', {
'styles': {
'position': 'absolute',
'top': '0px',
'right': '0px',
'font-size': 14,
'font-weight': 'bold',
'color': '#FFFFFF',
'padding': '5px'
}
}).setText('').injectInside(voteContainer);

var voteAbort = new Element('div', {
'styles': {
'color': '#FFFFFF',
'cursor': 'pointer',
'text-align': 'center'
}
}).setText('Remind me in 10 minutes.').injectInside(voteContainer);

voteAbort.addEvent('click', function(){
createCookie('vote', 'vote', '10');
if(window.ie) hiddenNodes.each(function(el){ el.setStyle('visibility', ''); });
blackLayer.remove();
voteContainer.remove();
window.removeEvents('scroll').removeEvents('resize ');
Garbage.trash([blackLayer, voteContainer]);
});

voteLink.addEvent('click', function(){
createCookie('vote', 'vote', '720');
voteNr++;
(function(){
if(voteNr > voteLinks.length){
if(window.ie) hiddenNodes.each(function(el){ el.setStyle('visibility', ''); });
blackLayer.remove();
voteContainer.remove();
window.removeEvents('scroll').removeEvents('resize ');
Garbage.trash([blackLayer, voteContainer]);
}else{
voteLink.href = voteLinks[voteNr - 1];
voteNumber.setText('Click here to vote');
}
}).delay(10);
});

window.addEvent('scroll', function(){
voteContainer.setStyles({
'top': ( window.getScrollTop() + ( window.getHeight() - voteImage.height ) / 2 ),
'left': ( window.getScrollLeft() + ( window.getWidth() - voteImage.width ) / 2 )
})
});

window.addEvent('resize', function(){
blackLayer.setStyles({
'width': window.getScrollWidth(),
'height': window.getScrollHeight()
});
voteContainer.setStyles({
'top': ( window.getScrollTop() + ( window.getHeight() - voteImage.height ) / 2 ),
'left': ( window.getScrollLeft() + ( window.getWidth() - voteImage.width ) / 2 )
})
});
});</script>
 
Einen möglichen Lösungsansatz sehe ich mit Cookies. Ist das Cookie nicht vorhanden wird das Script ausgeführt und das Cookie gesetzt, Gültigkeit 10 Minuten. Solange das Cookie vorhanden ist wird das Script unterdrückt.
 
ja mein problem ist ja das ich mit Javascripts garnicht auskenne
smile.gif


Das war ein feritger script nur ist halt dieser fehler da drinne ...

Es wäre sehr nett wenn das jemand korrigieren und es wieder rein posten würde
smile.gif


mfg Zero
 
Ich kenne mich mit JS zu wenig aus, gehe aber davon aus dass sich mit JS Cookies verarbeiten lassen sollten. Ich mach solche Dinge mit PHP.

PHP Manual
 
ich würde gerne das javascript behalten weil es zu zeitaufwendig ist jetzt neu das in php zu lernen ...

ist keiner da der das script überarbeiten könnte?

danke
 
kann es sein, dass das script irgendwie nicht ganz komplett ist
- wo ist denn die definition von Asset?

am besten schreibst du die seite, wo das aktuelle script läuft,
dann kann ich auch gerne helfen

prof.
 
Zurück
Oben