Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.03.2016, 10:49
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

Как скрыть/раскрыть текстовый блок не правя html
Приветствую! Есть текстовый блок за тегом <strong>, который я хочу скрывать/раскрывать по нажатию на "..." без правки html, но не получается выбрать именно требуемый кусок текста
<div class="parallax_one_grid_column_1"><p>Какой-то текст<strong>...</strong>продолжение текста									</p></div>

$(".parallax_one_grid_column_1").find("strong:contains(...)").click(function() {
    $(".parallax_one_grid_col_3.parallax_one_grid_column_1  p").toggle();
});
Ответить с цитированием
  #2 (permalink)  
Старый 05.03.2016, 11:38
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

ligisayan,
текст нельзя спрятать, его можно только уничтожить
Ответить с цитированием
  #3 (permalink)  
Старый 05.03.2016, 11:50
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

Сообщение от рони Посмотреть сообщение
ligisayan,
текст нельзя спрятать, его можно только уничтожить
рони, т.е. при переключении он будет уничтожаться? А, если, например присвоить участку текста тег с классом и его скрывать/отображать или через буфер как-то это момент обойти?
Ответить с цитированием
  #4 (permalink)  
Старый 05.03.2016, 11:51
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

ligisayan,
если текст будет в теге, то без проблем
Ответить с цитированием
  #5 (permalink)  
Старый 05.03.2016, 12:02
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

Сообщение от рони Посмотреть сообщение
ligisayan,
если текст будет в теге, то без проблем
ок, рони а как до него добраться и обернуть?
через
:has(strong:contains(...))
выхожу на клик - да?
Ответить с цитированием
  #6 (permalink)  
Старый 05.03.2016, 12:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

ligisayan,
а что на сервере нельзя текст после strong сразу обернуть в нужный тег?
Ответить с цитированием
  #7 (permalink)  
Старый 05.03.2016, 12:23
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

Сообщение от рони Посмотреть сообщение
ligisayan,
а что на сервере нельзя текст после strong сразу обернуть в нужный тег?
нет, блоки темы не пропускают теги, кроме <strong>, поэтому в вопросе без правки html и интересует как это сделать с помощью скрипта. если бы была такая возможность - вопроса бы не возникло изначально.
Ответить с цитированием
  #8 (permalink)  
Старый 05.03.2016, 12:23
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Открывашка 254 для показа/скрытия текста/тегов
ligisayan,
для любителей погорячее ...
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
    strong{
      cursor: pointer;
    }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
  <script>
$(function() {
    $(".parallax_one_grid_column_1 p").on("click", function(f) {
        var b = f.target,
            c = !1;
        $(b).is("strong:contains('...')") && $(this).contents().each(function(d, a) {
            if (c)
                if (3 == a.nodeType) {
                    var e = $(b).data("text" + d);
                    $(b).data("text" + d, a.data);
                    a.data = e ? e : ""
                } else $(a).toggle();
            a == b && (c = !0)
        })
    })
    .find("strong:contains('...')").trigger("click");
});
  </script>
</head>

<body>
 <div class="parallax_one_grid_column_1"><p>Какой-то текст<strong>...</strong>продолжение текста                                 </p></div>
 <div class="parallax_one_grid_column_1"><p>Какой-то текст<strong>...</strong>продолжение текста    <i>тест</i>   продолжение текста                          </p></div>
</body>

</html>
Ответить с цитированием
  #9 (permalink)  
Старый 05.03.2016, 12:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

ligisayan,
скрипт скрывает/показывает всё что находитьсся после strong, если изначально нужен текст полностью, убрать строку 30.
Ответить с цитированием
  #10 (permalink)  
Старый 05.03.2016, 12:51
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

рони, супер! без вашей помощи не пришел бы к такому циклу, экспериментировал с помощью substr, но все что-то где-то не то получалось
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как скрыть блок div по ключевому слову Sacred13 Элементы интерфейса 6 06.08.2013 19:13
Как добавить блок зума не переж body а в необходимый блок? ilyas-> Элементы интерфейса 0 30.07.2013 15:27
Как сделать блок, исчезающий вверху страницы? TRos Элементы интерфейса 7 12.04.2012 08:59
Как вывести переменную из javascript в html код? red-nicolas Элементы интерфейса 3 25.02.2012 13:27
На входе HTML получить на выходе просто текст, как? Dmitry Общие вопросы Javascript 2 25.08.2008 10:42