Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.06.2013, 16:54
Интересующийся
Отправить личное сообщение для antonio22 Посмотреть профиль Найти все сообщения от antonio22
 
Регистрация: 08.06.2013
Сообщений: 24

Помогите пожайлуста
По умолчанию выводиться первые 70 символов. Если описание длиннее, в конце добавлять троеточие и ссылку "ещё" (пунктирное подчеркивание). При клике показывать полное описание (без перезагрузки страницы) со ссылкой в конце "скрыть" - при клике описания опять схлопывается до 60 символов.
Я видел готовый скрипт спрятоть/раскрыть текст, но там нету сиволов.
Помогите пожайлуста!
Ответить с цитированием
  #2 (permalink)  
Старый 17.06.2013, 17:17
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

http://api.jquery.com/fadeToggle/
Ответить с цитированием
  #3 (permalink)  
Старый 17.06.2013, 19:42
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,103

antonio22,
скрипт, обрезающий строки можно по строкам или символам
скрипт ниже работает с тегами любой вложености типа <p><span><b><b><b><b><b>ТУТ ТЕКСТ</b></b></b></b></b></span></p> достаточно указать любого из родителей
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<style type="text/css">
a.more {
   cursor: pointer;
   color: #FF0033;
}

div.more {
display: none;
position: absolute;
background-color: #FFFFCC;
border: #3366FF dashed 2px;
padding: 5px;
margin:  6px;
margin-right: 10px;

}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript">
(function ($) {
    $.fn.correctLines = function (options) {
        var o = jQuery.extend({
            maxLine: 5, //Видимое кол-во строк
            afterLength: ' ... ', //Текст после видимого содержания
            fullText: false, //Добавить ссылку для отображения скрытого текста
            moreText: '\u00BB\u00BB', //Текст ссылки до показа скрытого содержания
            lessText: '\u00AB\u00AB', //Текст ссылки после показа скрытого содержания
            classNew: 'more', // Класс для ссылки и скрытого текста
            symbol: 0 //Количество символов  -- отменяет maxLine
                   }, options);
        return this.each(function (index, self) {
            $(self).find('*:last').length && (self=$(self).find('*:last'));
            var txt = $(self).html().split(o.symbol ?'':' ');
             $(self).html(txt[0]).css({
                "height": "auto"
            });
            var lastHeight = $(self).outerHeight();
            var k = 1,i;
            for (i = 1; i < txt.length; i++) {
                $(self).html(txt.slice(0, i).join(o.symbol ?'':' ') + o.afterLength + o.moreText);
                if (lastHeight < $(self).outerHeight()||(o.symbol && o.symbol-2 < i)) {
                    lastHeight = $(self).outerHeight();
                    k++;
                    if (k > o.maxLine) {
                        i--;
                        $(self).html(txt.slice(0, i).join(o.symbol ?'':' ') + o.afterLength);
                        if (o.fullText) {
                            $("<a/>", {
                                "text": o.moreText,
                                "class": o.classNew
                            })
                                .click(function (event) {
                                var text = $(this).text() == o.moreText ? o.lessText : o.moreText;
                                $(this).text(text).nextAll("."+o.classNew).slideToggle()
                                event.preventDefault()
                            }).appendTo($(self));
                            $("<br/>").appendTo($(self))
                            $("<div/>", {
                                "text": txt.slice(i).join(o.symbol ?'':' '),
                                "class": o.classNew
                            })
                                .appendTo($(self))
                        };
                        break
                    }
                };
            };
            if (k <= o.maxLine) $(self).html(txt.join(o.symbol ?'':' '));
        });
    }
})(jQuery);
</script>
  <title></title>
</head>
<body >


	<div class="bottom">
		<div class="text">
			<p><span><b><b><b><b><b>По умолчанию выводиться первые 70 символов. Если описание длиннее, в конце добавлять троеточие и ссылку "ещё" (пунктирное подчеркивание). При клике показывать полное описание (без перезагрузки страницы) со ссылкой в конце "скрыть" - при клике описания опять схлопывается до 60 символов.
Я видел готовый скрипт спрятоть/раскрыть текст, но там нету сиволов.
Помогите пожайлуста!</b></b></b></b></b></span></p>
		</div>
	</div><div class="bottom">
		<div class="text2">
			<p><span><b><b><b><b><b>По умолчанию выводиться первые 70 символов. Если описание длиннее, в конце добавлять троеточие и ссылку "ещё" (пунктирное подчеркивание). При клике показывать полное описание (без перезагрузки страницы) со ссылкой в конце "скрыть" - при клике описания опять схлопывается до 60 символов.
Я видел готовый скрипт спрятоть/раскрыть текст, но там нету сиволов.
Помогите пожайлуста!</b></b></b></b></b></span></p>
		</div>
	</div>
<script language="JavaScript" type="text/javascript">
$(".text p").correctLines({fullText: true,symbol: 70,moreText: " ещё", lessText : "скрыть" })
$(".text2 span").correctLines({fullText: true,maxLine: 2  })
</script>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 17.06.2013, 19:50
Профессор
Отправить личное сообщение для Kvark Посмотреть профиль Найти все сообщения от Kvark
 
Регистрация: 02.04.2013
Сообщений: 225

круто, чтоб совсем был ничтяк наверно нужно еще сдвигать вторую строчку чтоб ее не закрывал раскрытый текст?
Ответить с цитированием
  #5 (permalink)  
Старый 17.06.2013, 20:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,103

Сообщение от Kvark
сдвигать вторую строчку чтоб ее не закрывал раскрытый текст?
строка 13 position: relative; -- на вкус на цвет .

Последний раз редактировалось рони, 18.06.2013 в 01:30.
Ответить с цитированием
  #6 (permalink)  
Старый 18.06.2013, 01:22
Интересующийся
Отправить личное сообщение для antonio22 Посмотреть профиль Найти все сообщения от antonio22
 
Регистрация: 08.06.2013
Сообщений: 24

рони,
Спасибо уважаемый.
Но пожайлуста еще кое что
http://market.yandex.ru/compare.xml?...333579,6273742
прокрутите вниз первый товар.
Там есть кокраз раскрыть/закрыть текст
мне вот это нужно
Помогите пожайлуста очень прошу!

Последний раз редактировалось antonio22, 18.06.2013 в 01:33.
Ответить с цитированием
  #7 (permalink)  
Старый 18.06.2013, 06:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,103

antonio22,
помочь или сделать для вас?
Ответить с цитированием
  #8 (permalink)  
Старый 18.06.2013, 07:01
Интересующийся
Отправить личное сообщение для antonio22 Посмотреть профиль Найти все сообщения от antonio22
 
Регистрация: 08.06.2013
Сообщений: 24

помочь)
Ответить с цитированием
  #9 (permalink)  
Старый 18.06.2013, 13:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,103

antonio22,если вы самостоятельно разделите строку, это будет поводом вам помогать, хотите быстрее - вам в раздел работа.

var a = "1234567890",
    b = "123 4568 9",
    c = "1234 56",
    n = 7;
    function foo(str, n)
    {
       //return .....
    }
    alert(foo(a));  //return 1234567,890
    alert(foo(b));  //return 123 ,4568 9
    alert(foo(c));  //return 1234 56,
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с replace! faforty Общие вопросы Javascript 2 28.08.2011 13:10
помогите оптимизировать пожайлуста _axl Общие вопросы Javascript 3 06.04.2011 23:04
ПОМОГИТЕ с установкой 2 javascript- ов Рашид Общие вопросы Javascript 3 17.11.2010 16:19
Помогите! Многоуровневые вкладки! sergeeeeee Элементы интерфейса 2 02.08.2010 23:50
Перенаправление с ВКонтакте на фейк (помогите пожайлуста) SOADucT Я не знаю javascript 21 09.06.2009 04:40