Есть некоторый блок. при нажатии на ссылку, он должен увеличиться в размерах и открыться дополнительный текст. Делаю так - PHP: <script type="text/javascript"> function spoiler(id) { var obj = ""; // Проверить совместимость браузера if(document.getElementById) obj = document.getElementById(id).style; else if(document.all) obj = document.all[id]; else if(document.layers) obj = document.layers[id]; else return 1; // Пошла магия if(obj.display == "") obj.display = "none"; else if(obj.display != "none") obj.display = "none"; else obj.display = "block"; } </script> <div id="block_text"> хп <br> manna <br> <a href="javascript://" onClick="spoiler('content'); ">full info</a> <div id="content"> Содержимое </div></div> Но... срабатывает только по второму клику. Расширение блока я делаю через онклик обращение к css свойству. как в js скрипте это реализовать.
PHP: <script type="text/javascript"> function spoiler(where_id, what_id) { document.getElementById(where_id).style.width="200px"; document.getElementById(what_id).style.display="none"; document.getElementById(where_id+"_full").style.display="block"; document.getElementById(where_id+"_spoil").style.display="none"; } function full_info(where_id, what_id) { document.getElementById(where_id).style.width="400px"; document.getElementById(what_id).style.display="block"; document.getElementById(where_id+"_spoil").style.display="block"; document.getElementById(where_id+"_full").style.display="none"; } </script> <style> #block_text1{ background-color: pink; width: 200px; } #content1{ display: none; } #block_text1_spoil{ display: none; } </style> <div id="block_text1"> Вчера муравьи напали на представителя непальского посольства и съели его<span id="content1"> владыческие глаза адские, превратили в шимпазе и заставили его сожалеть о том, что он сделал в то время, <br/> когда небесные представители глотали неземные огарки прошлых лет. </span> <a href="#" id="block_text1_full" onClick="full_info('block_text1', 'content1'); ">full info</a> <a href="#" id="block_text1_spoil" onClick="spoiler('block_text1', 'content1'); ">spoiler</a> </div>