Показать сообщение отдельно
  #1 (permalink)  
Старый 21.10.2013, 09:19
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

eval + JSON проблема для начинающего. . .
Проблема такова: Есть вот такой код
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta name="" content="">
<style>
body{margin:0; padding:0; background:url(file:///C:/Users/Rail-gun/Desktop/ravens.gif);}
.tubs{border-radius:0px 0px 15px 15px; border: solid 2px #c4c6c1; background:#cfd1cd; padding-top:5px; padding-left:5px; padding-bottom:5px; padding-right:5px; margin-left:20px;width:auto; height:auto; float: left; box-shadow: 3px 3px rgba(0, 0, 0, 0.6);z-index:99;}
.textbody{display:none; background: #d7d9d5; border: solid 2px #c4c6c1; margin-top:1%;box-shadow: 3px 3px rgba(0, 0, 0, 0.7); white-space:pre-wrap;overflow: auto; top:0; left:0;}
</style>
</head>
<body>
<div align='center'>
<div id='globaltext' align="center" >
<div class="textbody" ></div>
<div class="textbody" ></div>
<div class="textbody" ></div>
<div class="textbody" ></div>
<div class="textbody" ></div></div>
<div id="menu" align="center">
<div class="tubs"><a href="#6">Главная</a></div>
<div class="tubs">Информация</div>
<div class="tubs">О Продукции</div>
<div class="tubs">Адреса</div>
<div class="tubs">Контакты</div>
</div></div>
<script>
function firstfun(){
var menuid=document.getElementById('menu');
var num=menuid.children.length;
var i=0;
while(i<num){menuid.children[i].onclick=function () {tabs('"num":"'+i+'"; "id":"globaltext"')};i++}
}
function tabs(obj){
var JSONstring='{'+obj+'}';
var JSONOBJ=eval( " ( " + obj + " ) " );
var bodyid=document.getElementById(id);
var num=bodyid.children.length;
var i=0;
while(i<num){bodyid.children[i].style.display="none";i++}
bodyid.children[funobj.num].style.display="block";
bodyid.children[element].style.height=screen.height-((screen.height/100)*3)-155+'px';
bodyid.children[element].style.width=screen.width-35+'px';
}
function seturl(){
var a=document.getElementsByTagName("a");
var num=a.length;
var i=0;
while(i<num){var ahref=a[i].href; a[i].onclick=function(){openframe(ahref)}; a[i].removeAttribute('href');i++;}
}
function openframe(ahref){
alert(ahref);
}
firstfun();
seturl();
</script>
</body>
</html>
Всего лишь табы для меню + функция которая будет открывать все ссылки в iframe. Проблема заключается в табах. Как только я решил избавиться от setAttribute в угоду старым IE и моему учителю начались проблемы. При вызове функции начали теряться номера нужных блоков для текста. . . Я подумал решить эту проблемы давно известной мне БД JSON(Известна мне она известна, но использую её в первый раз). Как бы eval использовал по инструкции. Но пишет что не хватает ')' . . . Пробовал JSON.parse но толку если старый дряхлый ie его не понимает? Подскажите решение проблемы...
Ответить с цитированием