Avatar billede jj_presentia Nybegynder
30. oktober 2007 - 18:05 Der er 15 kommentarer

Fjernelse af cookies i et javascript

Hey,

Jeg sidder og roder med et javascript der hjælper til med at oprette faneblade i content på et joomla site. Mit problem er at dette javascript ligger en cookie som husker det faneblad man var på. Det er jeg interesseret i at få disabled så den altså ikke længere ligger en cookie på computeren...

Der skal gerne kunne løses i aften

Nogen interesserede?
Avatar billede w13 Novice
30. oktober 2007 - 18:12 #1
Hvad hedder cookien?
Avatar billede jj_presentia Nybegynder
30. oktober 2007 - 18:20 #2
Er det ok at paste hele scriptet ind?
Avatar billede w13 Novice
30. oktober 2007 - 18:21 #3
Uha. Hvor mange kilometer fylder det? Jeg vil ikke love, at jeg kan finde ud af noget som helst i det. Kan du ikke finde cookiedelen? Evt. søge på "cookie" i det.
Avatar billede jj_presentia Nybegynder
30. oktober 2007 - 18:23 #4
Hele scriptet er 221 linier, her er cookie delen:

/* Copyright (c) 2006 Patrick Fitzgerald */
// Temporarily hide tabs
document.write('<style type="text/css">.tabber{display:none;}<\/style>');
// Set tab options
var tabberOptions = {
  //start on DOM ready
  'manualStartup':true,
  'cookie':"jw_tabber", /* Name to use for the cookie */
  'onLoad': function(argsObj)
  {
    var t = argsObj.tabber;
    var i;
    if (t.id) {
      t.cookie = t.id + t.cookie;
    }
    i = parseInt(getCookie(t.cookie));
    if (isNaN(i)) { return; }
    t.tabShow(i);
  alert('getCookie(' + t.cookie + ') = ' + i);
  },
'onClick':function(argsObj)
  {
    var c = argsObj.tabber.cookie;
    var i = argsObj.index;
    alert('setCookie(' + c + ',' + i + ')');
  setCookie(c, i);
  }
/;
// Cookie handling
function setCookie(name, value, expires, path, domain, secure) {
    document.cookie= name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}
function getCookie(name) {
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    } else {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1) {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}
function deleteCookie(name, path, domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" +
            ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") +
            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}
Avatar billede w13 Novice
30. oktober 2007 - 18:28 #5
Jeg ved ikke helt med path og domain.

Prøv evt. bare:

deleteCookie("jw_tabber");
Avatar billede jj_presentia Nybegynder
30. oktober 2007 - 18:28 #6
i hvilken linie?
Avatar billede w13 Novice
30. oktober 2007 - 18:32 #7
Når du vil fjerne cookien :)
Avatar billede jj_presentia Nybegynder
30. oktober 2007 - 18:39 #8
function deleteCookie(name, path, domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" +
            ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") +
            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}

deleteCookie("jw_tabber");

der?
Avatar billede w13 Novice
30. oktober 2007 - 19:10 #9
Evt., ja. Måske. Men det er et vildt gæt. Muligvis er det forkert at gøre det sådan. Muligvis er der noget i resten af koden, som forhindrer, at vi kan gøre sådan her..
Avatar billede jj_presentia Nybegynder
30. oktober 2007 - 19:13 #10
okaj - det var der jeg prøvede det - det virkede ikke. Desværre - tak for hjælpen ellers
Avatar billede w13 Novice
30. oktober 2007 - 19:15 #11
Hvorfor vil du slette denne? Og kan det ikke slåes fra i Joomla?
Avatar billede jj_presentia Nybegynder
30. oktober 2007 - 19:33 #12
jeg vil slette den fordi den "husker" hvilket faneblad man er på i sitet, det skal den ikke. jeg har set løsningen til version 2.2, men da vi kører 2.3 på sitet opstår problemet
Avatar billede w13 Novice
30. oktober 2007 - 19:36 #13
Ok. Men har du undersøgt på joomla, om det ikke også kan gøres i 2.3?

Prøv evt. at slette hele denne kodestump fra det kodestykke, du postede her:
--------------------------------------------------------------
document.write('<style type="text/css">.tabber{display:none;}<\/style>');
// Set tab options
var tabberOptions = {
  //start on DOM ready
  'manualStartup':true,
  'cookie':"jw_tabber", /* Name to use for the cookie */
  'onLoad': function(argsObj)
  {
    var t = argsObj.tabber;
    var i;
    if (t.id) {
      t.cookie = t.id + t.cookie;
    }
    i = parseInt(getCookie(t.cookie));
    if (isNaN(i)) { return; }
    t.tabShow(i);
  alert('getCookie(' + t.cookie + ') = ' + i);
  },
'onClick':function(argsObj)
  {
    var c = argsObj.tabber.cookie;
    var i = argsObj.index;
    alert('setCookie(' + c + ',' + i + ')');
  setCookie(c, i);
  }
/;
------------------------------------------------------
Hvis jeg har ramt rigtigt, bli'r cookien så aldrig sat.
Avatar billede jj_presentia Nybegynder
30. oktober 2007 - 19:50 #14
Jeg har søgt på joomla og i udviklernes eget fora - intet svar endnu. prøver lige denne løsning
Avatar billede w13 Novice
29. juli 2008 - 09:32 #15
Lukketid?
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