[JS] Cookie wijzigen
Ik heb een vraag betreft Javascript. Werk altijd met PHP maar ben nu een beetje Javascript aan het onderzoeken.
Nu heb ik het onderstaande script dat er voor zorgt dat je een DIV kunt weergeven en verbergen. Dit slaat die op in een cookie.
Alleen de cookie is uitgewerkt nadat de browser gesloten word. Kan ik de cookie ook tijdloos instellen of als dat niet kan dan maar tot 2015 of dergelijke?
Quote:
<script type="text/javascript">
var onthouden="aan" // actuele status bijhouden met sessie-cookie (aan/uit)
var vorige_verbergen="nee" // bij nieuw item vorige geopende item dichtvouwen(ja/nee)
if (document.getElementById){
document.write('<style type="text/css">')
document.write('.wisselen{display:none;}')
document.write('</style>')}
function getElementbyClass(classname){
ophalen=new Array()
var teller=0
var alleTags=document.all? document.all : document.getElementsByTagName("*")
for (i=0; i<alleTags.length; i++){
if (alleTags.className==classname)
ophalen[teller++]=alleTags}}
function dichtvouwen(omit){
var teller=0
while (ophalen[teller]){
if (ophalen[teller].id!=omit)
ophalen[teller].style.display="none"
teller++}}
function uitvouwen(cid){
if (typeof ophalen!="undefined"){
if (vorige_verbergen=="ja")
dichtvouwen(cid)
document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none"}}
function vernieuwen(){
dichtvouwen("alles")
selectedItem=getselectedItem()
selectedComponents=selectedItem.split("|")
for (i=0; i<selectedComponents.length-1; i++)
document.getElementById(selectedComponents).style.display="block"}
function get_cookie(Name) {
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))}}
return returnvalue;}
function getselectedItem(){
if (get_cookie(window.location.pathname) != ""){
selectedItem=get_cookie(window.location.pathname)
return selectedItem}
else return ""}
function status_opslaan(){
var teller=0, selectedItem=""
while (ophalen[teller]){
if (ophalen[teller].style.display=="block")
selectedItem+=ophalen[teller].id+"|"
teller++}
document.cookie=window.location.pathname+"="+selectedItem}
function do_onload(){
getElementbyClass("wisselen")
if (onthouden=="aan" && typeof ophalen!="undefined")
vernieuwen()}
if (window.addEventListener)
window.addEventListener("load", do_onload, false)
else if (window.attachEvent)
window.attachEvent("onload", do_onload)
else if (document.getElementById)
window.onload=do_onload
if (onthouden=="aan" && document.getElementById)
window.onunload=status_opslaan
</script>
[/quote]
Ben jullie nu al dankbaar! :)
var onthouden="aan" // actuele status bijhouden met sessie-cookie (aan/uit)
var vorige_verbergen="nee" // bij nieuw item vorige geopende item dichtvouwen(ja/nee)
if (document.getElementById){
document.write('<style type="text/css">')
document.write('.wisselen{display:none;}')
document.write('</style>')}
function getElementbyClass(classname){
ophalen=new Array()
var teller=0
var alleTags=document.all? document.all : document.getElementsByTagName("*")
for (i=0; i<alleTags.length; i++){
if (alleTags.className==classname)
ophalen[teller++]=alleTags}}
function dichtvouwen(omit){
var teller=0
while (ophalen[teller]){
if (ophalen[teller].id!=omit)
ophalen[teller].style.display="none"
teller++}}
function uitvouwen(cid){
if (typeof ophalen!="undefined"){
if (vorige_verbergen=="ja")
dichtvouwen(cid)
document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none"}}
function vernieuwen(){
dichtvouwen("alles")
selectedItem=getselectedItem()
selectedComponents=selectedItem.split("|")
for (i=0; i<selectedComponents.length-1; i++)
document.getElementById(selectedComponents).style.display="block"}
function get_cookie(Name) {
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))}}
return returnvalue;}
function getselectedItem(){
if (get_cookie(window.location.pathname) != ""){
selectedItem=get_cookie(window.location.pathname)
return selectedItem}
else return ""}
function status_opslaan(){
var teller=0, selectedItem=""
while (ophalen[teller]){
if (ophalen[teller].style.display=="block")
selectedItem+=ophalen[teller].id+"|"
teller++}
document.cookie=window.location.pathname+"="+selectedItem}
function do_onload(){
getElementbyClass("wisselen")
if (onthouden=="aan" && typeof ophalen!="undefined")
vernieuwen()}
if (window.addEventListener)
window.addEventListener("load", do_onload, false)
else if (window.attachEvent)
window.attachEvent("onload", do_onload)
else if (document.getElementById)
window.onload=do_onload
if (onthouden=="aan" && document.getElementById)
window.onunload=status_opslaan
</script>
[/quote]
Ben jullie nu al dankbaar! :)
code] en [/code] tags om code op het forum te plaatsen.
Gebruik [Karl Karl op 03/11/2010 18:25:44:
Gebruik [code] en [/code] tags om code op het forum te plaatsen.
Grappige en slimme oplossing om de code tags te schrijven nu de ignore tag niet werkt.
Toevoeging op 04/11/2010 16:01:09:
Bump!
Toevoeging op 04/11/2010 17:37:29:
Dit heb ik nu, waarom werkt het niet?