скрыть текст после нажатия на ссылку

Тема в разделе "PHP", создана пользователем ufaclub, 24 апр 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. ufaclub

    ufaclub

    Регистр.:
    1 май 2007
    Сообщения:
    394
    Симпатии:
    17
    .$category['description']. - описание (которое над скрыть после нажатия ссылку )

    HTML:
    }
    $categories = mysql_query("SELECT * FROM jb_board_cat WHERE root_category = 0 ORDER by sort_index"); cq();
    $GLOBALS['tdEnd'] = round(mysql_num_rows($categories) / 2);$GLOBALS['count_rows'] = 0;
    echo "<table width=100%><tr valign=top><td width=50%>";
    while($category = mysql_fetch_assoc($categories))
    {
    echo "<div style=\"margin-top:15px;\">";
    echo ($category['img']!="")?"<div style=\"float:left; margin-right:10px; \"><img align=left src=\"".$GLOBALS['host']."/upload/cat/".$category['img']."\"></div>":" ";
    echo "<H4><a href=# onClick=\"details(9999".$category['id'].");return false;\" style=\"cursor:pointer\">".$category['name_cat']."</a> <span id=count_".$category['id']."></span></H4>".$category['description']."<div id=\"9999".$category['id']."\" style=\"DISPLAY: none; padding-left:0px\">";
    $sub = 1;
    listcat2($category['id'], $sub, $GLOBALS['count']);
    echo "</div>";
    if ($GLOBALS['count'] != 0) echo "<script type=\"text/javascript\">document.getElementById('count_".$category['id']."').innerHTML = '".$GLOBALS['count']."';</script>";
    $GLOBALS['count'] = 0;
    echo "</div>";

    [​IMG]
     
  2. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    Парни, реально задолбали с такими вопросами.
    ЭТО НЕ ДЕЛАЕТСЯ НА PHP.
     
  3. ufaclub

    ufaclub

    Регистр.:
    1 май 2007
    Сообщения:
    394
    Симпатии:
    17
    Ну тогда на Javascript помоги реализовать в частности можно на jQuery
     
  4. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    Может я и погарячился.
    При нажатии на ссылку что происходит - ajax и т.п. или нормальный переход по линку?
     
  5. ufaclub

    ufaclub

    Регистр.:
    1 май 2007
    Сообщения:
    394
    Симпатии:
    17
    ajax т.е снизу вылазиют категории

    <a href=# onClick=\"details(9999".$category['id'].");return false;\" style=\"cursor:pointer\">".$category['name_cat']."</a> <span id=count_".$category['id']."></span></H4> ".$category['description']." <div id=\"9999".$category['id']."\" style=\"DISPLAY: none; padding-left:0px\">";
     
  6. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    Тогда я прав, всё делается на JS.
    Добавь в функцию details() применение стиля "dispaly: none;" к нужному слою.
     
  7. ufaclub

    ufaclub

    Регистр.:
    1 май 2007
    Сообщения:
    394
    Симпатии:
    17
    спасибо конечно , но можно на моем примере? я код выложил и строчку даже..для меня проблемно такое сделать еще(
     
  8. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    На твоём примере нельзя - в нём нет нужного.
    Если сайт в инете, дай линк, тогда смогу подсказать более предметно.

    Добавлено через 21 минуту
    В своём коде замени строку
    PHP:
    echo "<H4><a href=# onClick=\"details(9999".$category['id'].");return false;\" style=\"cursor:pointer\">".$category['name_cat']."</a> <span id=count_".$category['id']."></span></H4>".$category['description']."<div id=\"9999".$category['id']."\" style=\"DISPLAY: none; padding-left:0px\">";
    на
    PHP:
    echo "<H4><a href=# onClick=\"details(9999".$category['id'].");return false;\" style=\"cursor:pointer\">".$category['name_cat']."</a> <span id=count_".$category['id']."></span></H4><div id=des9999".$category['id']." style=\"display: block;\">".$category['description']."</div><div id=\"9999".$category['id']."\" style=\"DISPLAY: none; padding-left:0px\">";
    Код:
    function details(id)
    {  
    	if(acv_desscription == id){ 
    		var desscription = document.getElementById(id); 
    		desscription.style.display = (desscription.style.display == 'none')?'block':'none'; }
    	else{
    		document.getElementById(id).style.display = 'block'; 
    		if(acv_desscription) document.getElementById(acv_desscription).style.display = 'none'; 
    		acv_desscription = id;} 
    }
    
    замени на
    Код:
    function details(id)
    {  
    	if(acv_desscription == id){ 
    		var desscription = document.getElementById(id); 
    		desscription.style.display = (desscription.style.display == 'none')?'block':'none'; }
    	else{
    		document.getElementById(id).style.display = 'block'; 
    		if(acv_desscription) document.getElementById(acv_desscription).style.display = 'none'; 
    		acv_desscription = id;}
    document.getElementById('des'+id).style.display = 'none'; 
    }
    
     
  9. ufaclub

    ufaclub

    Регистр.:
    1 май 2007
    Сообщения:
    394
    Симпатии:
    17
    работает, но один минус
    после выбора другой категории описание непоявляеться(((
     
  10. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    В папке js файл ot.js
     
Статус темы:
Закрыта.