Показать сообщение отдельно
  #2 (permalink)  
Старый 20.10.2009, 21:20
Новичок на форуме
Отправить личное сообщение для saider Посмотреть профиль Найти все сообщения от saider
 
Регистрация: 20.10.2009
Сообщений: 6

Осталась одна проблемка, помогите
Все, я разобрался с этим JavaScript(ом) вот что у меня получилось:
<SCRIPT LANGUAGE="JavaScript">
function setCookie (name, value, expires, path, domain, secure) {
      document.cookie = name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}

function getCookie(name) {
    if(window.widget) return decodeURIComponent(widget.preferenceForKey(name))||null;
    if(new RegExp(name+'\=([^;]*);','').test(document.cookie+';') ) return decodeURIComponent(RegExp.$1);
    return null;
}

function my_getbyid(id){
itm=null;
if(document.getElementById){
itm=document.getElementById(id)
}
else if(document.all){
itm=document.all[id]
}
else if(document.layers){
itm=document.layers[id]
}
return itm
}

function my_hide_div(itm){
if(!itm)return;
itm.style.display="none"
}

function my_show_div(itm){
if(!itm)return;
itm.style.display="";
}

function togglecategory(fid,add){
saved=new Array();
clean=new Array();
if(tmp=getCookie("cms_mpn")){
saved=tmp.split(",");
}
for(i=0;i<saved.length;i++){
if(saved[i]!=fid&&saved[i]!=""){
clean[clean.length]=saved[i];
}
}
if(add){
clean[clean.length]=fid;
my_show_div(my_getbyid('fc_'+fid));
my_hide_div(my_getbyid('fo_'+fid));
}
else{
my_show_div(my_getbyid('fo_'+fid));
my_hide_div(my_getbyid('fc_'+fid));
}
setCookie("cms_mpn",clean.join(','),'','/','','');
}
</SCRIPT>



<?php
$fc_syle=array();
$fo_syle=array();
$cookie_fc=explode(",", $_COOKIE['cms_mpn']);
while (list ($key, $val) = each($cookie_fc)) {
if($val=="0") {$fc_syle[$val]="";$fo_syle[$val]="style=\"display: none;\"";}
elseif($val=="1") {$fc_syle[$val]="";$fo_syle[$val]="style=\"display: none;\"";}
elseif($val=="2") {$fc_syle[$val]="";$fo_syle[$val]="style=\"display: none;\"";}
else{
$fc_syle[0]="style=\"display: none;\"";$fo_syle[0]="";
$fc_syle[1]="style=\"display: none;\"";$fo_syle[1]="";
$fc_syle[2]="style=\"display: none;\"";$fo_syle[2]="";
}

}

echo <<<EOF
<DIV {$fc_syle[0]} id=fc_0>
<DIV><A href="javascript:togglecategory('0', 0);">Добро пожаловать на наш SEO форум</a></DIV>
</DIV>
<DIV {$fo_syle[0]} id=fo_0>
<DIV><A href="javascript:togglecategory('0', 1);">Добро пожаловать на наш SEO форум</a></DIV>
1
</DIV>
<br>
<DIV {$fc_syle[1]} id=fc_1>
<DIV><A href="javascript:togglecategory('1', 0);">Добро пожаловать на наш SEO форум</a></DIV>
</DIV>
<DIV {$fo_syle[1]} id=fo_1>
<DIV><A href="javascript:togglecategory('1', 1);">Добро пожаловать на наш SEO форум</a></DIV>
1
</DIV>
<br>
<DIV {$fc_syle[2]} id=fc_2>
<DIV><A href="javascript:togglecategory('2', 0);">Добро пожаловать на наш SEO форум</a></DIV>
</DIV>
<DIV {$fo_syle[2]} id=fo_2>
<DIV><A href="javascript:togglecategory('2', 1);">Добро пожаловать на наш SEO форум</a></DIV>
1
</DIV>
EOF;
?>

вот осталась еще одна проблемка, как бы по продуманнее бы сделать php скриптик, что бы он сам прописывал стили. На данный момент он обробатывет так:
$fc_syle=array();
$fo_syle=array();
$cookie_fc=explode(",", $_COOKIE['cms_mpn']);
while (list ($key, $val) = each($cookie_fc)) {
if($val=="0") {$fc_syle[$val]="";$fo_syle[$val]="style=\"display: none;\"";}
elseif($val=="1") {$fc_syle[$val]="";$fo_syle[$val]="style=\"display: none;\"";}
elseif($val=="2") {$fc_syle[$val]="";$fo_syle[$val]="style=\"display: none;\"";}
else{
$fc_syle[0]="style=\"display: none;\"";$fo_syle[0]="";
$fc_syle[1]="style=\"display: none;\"";$fo_syle[1]="";
$fc_syle[2]="style=\"display: none;\"";$fo_syle[2]="";
}

}
Ответить с цитированием