Avatar billede ssv Nybegynder
22. august 2008 - 12:40 Der er 2 kommentarer og
1 løsning

Vise en div kun én gang (fortsat)

Hello.

Jeg er rendt ind i et lille problem med noget javascript som jeg fik lavet herinde i går. Min kode ser således ud:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Eksempel</title>
<script type="text/javascript">
function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; pat=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name,"",-1);
}

function hide(uknow){
  var o=document.getElementById(uknow);
  o.parentNode.removeChild(o);
  createCookie("closedbox"+uknow,"true",365);
}

function show(uknow){
  var o=document.getElementById(uknow);
  if(readCookie("closedbox"+uknow)==="true"){
    o.parentNode.removeChild(o);
  }
}
</script>
<style type="text/css">
body { margin: 0; font: 11px Verdana, Arial, Helvetica, sans-serif; } img { border: 0; }
.uknow { position: absolute; margin: 15px 0 0 15px; z-index: 10; width: 195px; left: 50%; top: 0; margin: 26px 0 0 300px; }
.uknowHeader { background: url(uknowHeader4.gif); width: 178px; height: 25px; font: 17px Calibri, Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; color: #fff; padding: 17px 0 0 10px; }
.uknowContent { background:url(uknowMiddle3.gif); width: 168px; color: #fff1d6; padding: 0 10px 0 10px; }
.uknowBottom { background: url(uknowBottom4.gif); width: 188px; height: 15px; }
.close { position: absolute; z-index: 20; top: 0; right: 0; margin: 17px 18px 0 0; }
</style>
</head>

<body>
<iframe src="http://pointshop.dk" height="100%" width="100%" frameborder="0" style="z-index: 1; position: absolute;"></iframe>

<div id="uknow" class="uknow">
<div class="uknowHeader">Information</div>
<div class="uknowContent">Noget generel information der bare skal fylde tre linjer..</div>
<div class="uknowBottom"></div>
<a href="#" onclick="hide('uKnow');"><img src="close.gif" class="close" height="12" width="12" alt="Luk boksen"></a>
</div>

<script type="text/javascript">
show("uKnow");
</script>

</body>
</html>

----

Koden fungerer fint i IE, men testes det i FF går det galt - eller rettere sagt, div'en skjules ikke. Nu blev den anden tråd besvaret, så nu prøver vi lige igen i en ny tråd ;-)

Siden kan også ses på: http://proads.dk/simon/close/  (ifram'en er kun sat for syns skyld). Og der er 100 point endnu en gang til den der kan finde en løsning :-)
Avatar billede w13 Novice
22. august 2008 - 12:53 #1
Du bør nok kigge på Fejlkonsollen i FF. Den skriver rigtig mange ting, men de fleste skyldes vist steder, hvor du har sat cursor:hand; hvilket kun virker i IE. Det skal være cursor:pointer; for at virke i alle browsere.

Problemet skyldes, at koden kalder:

onclick="hide('uKnow');"

Men dit element har ikke id'et "uKnow", det hedder derimod "uknow", dvs. med små bogstaver. Så ret:

onclick="hide('uKnow');"

til:

onclick="hide('uknow');"

Derudover skal du også rette:

<script type="text/javascript">
show("uKnow");
</script>

til:

<script type="text/javascript">
show("uknow");
</script>

Det er kun Internet Explorer, som ignorerer, at JavaScript er casesensitive.
Avatar billede ssv Nybegynder
22. august 2008 - 12:58 #2
Tænk at det var så nemt. My bad. Tak for hjælpen endnu en gang :-)
Avatar billede w13 Novice
22. august 2008 - 13:11 #3
:)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester