05.03.2016, 10:49
|
Кандидат Javascript-наук
|
|
Регистрация: 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();
});
|
|
05.03.2016, 11:38
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
ligisayan,
текст нельзя спрятать, его можно только уничтожить
|
|
05.03.2016, 11:50
|
Кандидат Javascript-наук
|
|
Регистрация: 19.06.2015
Сообщений: 114
|
|
Сообщение от рони
|
ligisayan,
текст нельзя спрятать, его можно только уничтожить
|
рони, т.е. при переключении он будет уничтожаться? А, если, например присвоить участку текста тег с классом и его скрывать/отображать или через буфер как-то это момент обойти?
|
|
05.03.2016, 11:51
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
ligisayan,
если текст будет в теге, то без проблем
|
|
05.03.2016, 12:02
|
Кандидат Javascript-наук
|
|
Регистрация: 19.06.2015
Сообщений: 114
|
|
Сообщение от рони
|
ligisayan,
если текст будет в теге, то без проблем
|
ок, рони а как до него добраться и обернуть?
через
:has(strong:contains(...))
выхожу на клик - да?
|
|
05.03.2016, 12:07
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
ligisayan,
а что на сервере нельзя текст после strong сразу обернуть в нужный тег?
|
|
05.03.2016, 12:23
|
Кандидат Javascript-наук
|
|
Регистрация: 19.06.2015
Сообщений: 114
|
|
Сообщение от рони
|
ligisayan,
а что на сервере нельзя текст после strong сразу обернуть в нужный тег?
|
нет, блоки темы не пропускают теги, кроме <strong>, поэтому в вопросе без правки html и интересует как это сделать с помощью скрипта. если бы была такая возможность - вопроса бы не возникло изначально.
|
|
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>
|
|
05.03.2016, 12:26
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
ligisayan,
скрипт скрывает/показывает всё что находитьсся после strong, если изначально нужен текст полностью, убрать строку 30.
|
|
05.03.2016, 12:51
|
Кандидат Javascript-наук
|
|
Регистрация: 19.06.2015
Сообщений: 114
|
|
рони, супер! без вашей помощи не пришел бы к такому циклу, экспериментировал с помощью substr, но все что-то где-то не то получалось
|
|
|
|