Het doel:
De gebruiker een keuze laten maken tussen (in dit geval 2) verschillende stylesheets. Zodat bijv. mensen die slecht kunnen zien, het beter kunnen lezen.
Nu heb ik het volgende scriptje:
Nu werkt het eenmalig, maar kan ik niet nogmaals switchen terug naar me andere stylesheet! En hij geeft ook soiso een foutboodschap. Weet iemand wat er fout is?
http://home.hccnet.nl/mbaks/rijk dat is de website!
De gebruiker een keuze laten maken tussen (in dit geval 2) verschillende stylesheets. Zodat bijv. mensen die slecht kunnen zien, het beter kunnen lezen.
Nu heb ik het volgende scriptje:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
| //-------------------
function getCookie(name)
{
var prefix = name + '=';
var begin = document.cookie.indexOf('; ' + prefix);
if (begin == -1)
{
begin = document.cookie.indexOf(prefix);
if (begin != 0) return null;
}
else
begin += 2;
var end = document.cookie.indexOf(';', begin);
if (end == -1)
end = document.cookie.length;
return unescape(document.cookie.substring(begin + prefix.length, end));
}
function setCookie(cookieName, cookieValue, expirationDate)
{
var insertCookie = cookieName + '=' + cookieValue + '; expires=' + expirationDate;
document.cookie = insertCookie;
}
//----
var expiringDate = 'Monday, 04-Apr-2010 05:00:00 GMT';
function getActiveSheet()
{
for(i=0; (a = document.getElementsByTagName('link')[i]); i++)
{
if(a.getAttribute('rel').indexOf('style') != -1)
{
return a.getAttribute('href');
}
}
}
function getPreferredSheet()
{
var gettedStyle = getCookie('style');
if(!gettedStyle)
{
gettedStyle = 'index-style-all.css';
setCookie('style', gettedStyle, expiringDate);
}
return gettedStyle;
}
function setActiveSheet(newSheet, currSheet)
{
for(i = 0; (a = document.getElementsByTagName('link')[i]); i++)
{
if(a.getAttribute('href') == currSheet)
{
a.setAttribute('href', newSheet);
setCookie('style', newSheet, expiringDate);
}
}
}
function checkSheets()
{
var prefSheet = getPreferredSheet();
var currSheet = getActiveSheet();
if(prefSheet != currSheet)
{
setActiveSheet(prefSheet, currSheet);
}
} |
Nu werkt het eenmalig, maar kan ik niet nogmaals switchen terug naar me andere stylesheet! En hij geeft ook soiso een foutboodschap. Weet iemand wat er fout is?
http://home.hccnet.nl/mbaks/rijk dat is de website!