Все доброго времени суток.
Тут на форуме нашел такую тему, в которой просят при клике увеличивать шрифт на сайте, я попробовал написать, написал, ну и уже как оч привычно, работает везде, кроме IE. Вот и пришел сюда за помощью. Укажи на мою ошибку, если такое возможно. Все скрипты ниже.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Увеличиваем шрифт</title>
<style type="text/css">
body {font-size: 120%;}
ul.changeFont {list-style: none;}
ul.changeFont li {
float: left;
margin: 0 0 0 5px;
}
ul.changeFont li a {
text-decoration: none;
color: #082b25;
}
ul.changeFont li a:active {color: #ec0024}
#small {font-size: 11px;}
#big{font-size: 15px;}
#bigger{font-size: 19px;}
.spacer {clear: both;}
#text {font-size: 14px;}
.text_14px {font-size: 14px !important;}
.text_17px {font-size: 17px !important;}
.text_20px {font-size: 20px !important;}
</style>
</head>
<body>
<ul class="changeFont" id="changeFont">
<li id="small"><a href="javascript:void(0);">A</a></li>
<li id="big"><a href="javascript:void(0);">A</a></li>
<li id="bigger"><a href="javascript:void(0);">A</a></li>
</ul>
<br class="spacer" />
<div id="text">
Анонимные - доступны только с момента объявления. Синтаксис new Function используется редко, в основном для получения функции из текста, например, динамически загруженного с сервера в процессе выполнения скриптов.
</div>
</body>
</html>
Скрипт вставлял перед закрывающимся тегом body
<script type="text/javascript">
// функция обрабатывающая клик
font = function() {
// получение элементов по которым будет кликать
var mainUl = document.getElementById("changeFont").getElementsByTagName("LI");
// узнаем по какому элементу кликнули
for (j = 0; j < mainUl.length; j ++) {
if (mainUl[j].nodeName == "LI") {
var Ulchild = mainUl[j];
// передачи идентификатора элемента по которому кликнули функции уведличивающей шрифт
Ulchild.onclick = function() { changeFont(this.id) } // кстати вот этот элемент не могу передать в IE
}
}
// загрузка куков
cookieLoad();
}
// ф-ция уведличивающая шрифт
changeFont = function(elem) {
// этому элементу далее будет устанавливатся атрибут для куков **
var change = document.getElementById("text");
// устанавливаю атрибут для увеличения шрифта
switch(elem) {
case "small":
change.setAttribute("class", "text_14px");
break;
case "big":
change.setAttribute("class", "text_17px");
break;
case "bigger":
change.setAttribute("class", "text_20px");
break;
}
// **
if (change.getAttribute("class")) {
var cookie = change.getAttribute("class");
cookieSet(cookie);
}
}
// устанавливаю куки
cookieSet = function(cookie) {
if (navigator.cookieEnabled) {
if (cookie != '') {
cDate = new Date;
cDate.setTime(cDate.getTime() + 3600000);
rDate = cDate.toGMTString();
document.cookie = "c_name=" + cookie + "; expires=" + rDate + ";";
}
cookieLoad();
}
}
// загружаю куки
cookieLoad = function() {
if (navigator.cookieEnabled) {
if (document.cookie != '') {
docCook = document.cookie.split('; ');
docCook[0] = docCook[0].split('=');
cAttr = docCook[0][1];
document.getElementById("text").setAttribute('class', cAttr);
}
}
}
// пытаюсь кросбраузерно запустить ф-цию font
if (window.addEventListener) window.addEventListener("load", font, false);
if (window.attachEvent) window.attachEvent("onload", font);
</script>
если вам не сложно укажите на ошибки. Заранее благодарен!