Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.10.2015, 02:31
Аспирант
Отправить личное сообщение для Иззет Посмотреть профиль Найти все сообщения от Иззет
 
Регистрация: 22.11.2013
Сообщений: 39

Теги html выводятся в виде строки
<div class="visible"></div>
<div class='content'>
      <h1>Заголовок1</h1>
      <p>Текст1</p>
      <a href='#'>ссылка1</a>
</div>
<div class='content'>
      <h1>Заголовок2</h1>
      <p>Текст2</p>
      <a href='#'>ссылка2</a>
</div>

Предположим, нужно взять содержимое дивов .content и выводить через див .visible содержимое случайного дива .content
var content_arr = [];
    $(".content").each(function() {
        var elem = $(this).html();
        content_arr.push(elem);
        $(this).text("");   
    }).hide();
    n = Math.round(Math.random()*(content_arr.length - 1));
    $('.visible').text(content_arr[n]).show();

В итоге текст в .visible выводится в виде строки вместе с тегами. Как реализовать так, чтобы в .visible нормально выводился html код?
Ответить с цитированием
  #2 (permalink)  
Старый 22.10.2015, 02:46
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Иззет,

text -> html
Ответить с цитированием
  #3 (permalink)  
Старый 22.10.2015, 02:52
Аспирант
Отправить личное сообщение для Иззет Посмотреть профиль Найти все сообщения от Иззет
 
Регистрация: 22.11.2013
Сообщений: 39

Да, очень глупая ошибка, как это я не углядел) спасибо, что раскрыли глаза)
Ответить с цитированием
  #4 (permalink)  
Старый 22.10.2015, 03:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Иззет,
вариант...
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .visible  {
    display: none;

  }

 </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
     $(function(){
     var content_arr = [], n;
    $(".content").each(function() {
        content_arr.push(this.innerHTML);
    }).remove();
    n = Math.floor(Math.random()*content_arr.length);
    $('.visible').html(content_arr[n]).show();
});
  </script>
</head>

<body>
<div class="visible"></div>
<div class='content'>
      <h1>Заголовок1</h1>
      <p>Текст1</p>
      <a href='#'>ссылка1</a>
</div>
<div class='content'>
      <h1>Заголовок2</h1>
      <p>Текст2</p>
      <a href='#'>ссылка2</a>
</div>



</body>

</html>
Ответить с цитированием
  #5 (permalink)  
Старый 22.10.2015, 10:29
Аспирант
Отправить личное сообщение для Иззет Посмотреть профиль Найти все сообщения от Иззет
 
Регистрация: 22.11.2013
Сообщений: 39

Спасибо, вариант намного оптимальней моего.
Ответить с цитированием
  #6 (permalink)  
Старый 22.10.2015, 11:43
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Иззет,
ещё вариант
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .visible  {
    display: none;

  }

 </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
 $(function(){
     var content_arr = $.makeArray($(".content").remove()),
     n = Math.floor(Math.random()*content_arr.length);
    $('.visible').html(content_arr[n].innerHTML).show();
});
  </script>
</head>

<body>
<div class="visible"></div>
<div class='content'>
      <h1>Заголовок1</h1>
      <p>Текст1</p>
      <a href='#'>ссылка1</a>
</div>
<div class='content'>
      <h1>Заголовок2</h1>
      <p>Текст2</p>
      <a href='#'>ссылка2</a>
</div>



</body>

</html>
Ответить с цитированием
  #7 (permalink)  
Старый 22.10.2015, 14:39
Аспирант
Отправить личное сообщение для Иззет Посмотреть профиль Найти все сообщения от Иззет
 
Регистрация: 22.11.2013
Сообщений: 39

Спасибо за помощь. Не знал что всю мою писанину можно уместить в 3 строки)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передать в виде строки </script kosmom Общие вопросы Javascript 3 06.06.2015 20:12
Послать значения из разных div в виде строки Timuchen AJAX и COMET 4 25.08.2014 00:24
HexDump файла в виде строки Vitamin77 Общие вопросы Javascript 6 20.08.2014 16:11
Парсинг HTML -> DOM в нормальных браузерах (таки проблема) FINoM Events/DOM/Window 9 19.01.2014 17:38
HTML таблица. Как получить значения ячеек выделенной строки Paltusssss Events/DOM/Window 1 27.01.2013 05:07