Скрипт для разворачивания скрипта

Тема в разделе "JavaScript", создана пользователем zirigor, 5 июн 2012.

Модераторы: ZiX
  1. zirigor

    zirigor Писатель

    Регистр.:
    3 июн 2012
    Сообщения:
    5
    Симпатии:
    0
    Собственно хочу сделать скрипт типа аккордеон
    но чтобы разворачивался не текст а другие скрипты

    с текстом проблем не обнаружил, а вот попытки вставить туда рабочий скрипт успехом не увенчались
     
  2. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    А если предварительно все теги скрипта преобразовать в html сущности?
    В PHP это можно сделать, например так: $ValidScript=strip_tags(trim(htmlentities($Script, ENT_QUOTES)));
    Где $Script содержит текст скрипта...
     
  3. zirigor

    zirigor Писатель

    Регистр.:
    3 июн 2012
    Сообщения:
    5
    Симпатии:
    0
    прочитал про соответствующую функцию
    http://www.forum.usurt.ru/php/function.htmlentities.html
    но, если не ошибаюсь, при преобразовании тегов скрипта в html они теряют свою программную значимость, тоесть перестают работать
    как вариант, преобразовать в html, а уже в самой ячейке, будучи уже в аккордеоне. раскрыть эти строки, как скрипт, но в плане реализации пока не знаю как это осуществить

    реально ли это сделать к примеру через extract
     
  4. Andipas

    Andipas Постоялец

    Регистр.:
    5 дек 2007
    Сообщения:
    130
    Симпатии:
    92
  5. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    Я что-то не понял чего конкретно вы добиваетесь? Вам нужно отобразить содержимое (текст) скрипта и там же показать пример работы скрипта или как?
     
  6. zirigor

    zirigor Писатель

    Регистр.:
    3 июн 2012
    Сообщения:
    5
    Симпатии:
    0
    Хорошо постараюсь объяснить
    Хочу сделать возможность комментирования на сайте как через социальные сервисы, так и через сам сайт, но помещать все строки разом выглядит уж больно не симпатично, поэтому на ум пришла идея сделать это в виде аккордеона
    За основу, к примеру, возьмем способ реализации данной затеи с этого сайта
    http://www.beloll.ru/javascript/5_accordions_realisations/

    но если вместо текста вставить скрипт комментариев социальных сетей - ничего не получится, то есть если сделать вот так:

    PHP:
    <html>
    <
    head>
     
    <
    div id="fb-root"></div>
    <
    script>(function(dsid) {
      var 
    jsfjs d.getElementsByTagName(s)[0];
      if (
    d.getElementById(id)) return;
      
    js d.createElement(s); js.id id;
      
    js.src "//connect.facebook.net/ru_RU/all.js#xfbml=1";
      
    fjs.parentNode.insertBefore(jsfjs);
    }(
    document'script''facebook-jssdk'));</script>
     
     
     
     
    <style>
    body {
        font: 13px Arial, Helvetica, sans-serif;
        color: #1e1e1e;
    }
    #container {
        width: 600px;
        margin: 20px auto;
    }
    #accordion .item {
        width: 400px;
        height: 30px;
        overflow: hidden;
     
        transition: height ease-in-out 500ms;
        -o-transition: height ease-in-out 500ms;
        -moz-transition: height ease-in-out 500ms;
        -webkit-transition: height ease-in-out 500ms;
     
        border: 1px solid #ccc;
        border-radius: 5px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
     
        margin-bottom: 2px;
    }
    #accordion a {
        display: block;
        height: 20px;
        line-height: 20px;
     
        background: #e6e6e6;
        padding: 5px;
        color: #1e1e1e;
        text-decoration: none;
    }
    #accordion p {
        height: 150px;
        padding: 5px;
    }
    #accordion div:hover {
        height: 180px;
    }
    #accordion div:hover a {
        border-bottom: 1px solid #ccc;
        font-weight: bold;
    }
    </style>
     
     
    </head>
    <body>
     
    <div id="container">
      <div id="accordion">
        <div class="item">
          <a href="#">Комментирование через VK</a>
          <p>
      ...
          </p>
        </div>
        <div class="item">
          <a href="#">Комментирование через Face</a>
          <p>
          <div class="fb-comments" data-href="http://example.com" data-num-posts="2" data-width="470"></div>
          </p>
        </div>
      </div>
      </div>
    </div>
     
     
     
    </body>
    </html>


    Повозившись с кодом, я, увы, самостоятельно не смог настроить данную возможность, по сему обращаюсь :)
     
  7. zirigor

    zirigor Писатель

    Регистр.:
    3 июн 2012
    Сообщения:
    5
    Симпатии:
    0