Mansolid
@Mansolid
Начинающий вебмастер

Почему скрипт JS игнорирует теги?

Нашёл скрипт спойлера с превью с определённым количеством символов, но скрипт JS игнорирует теги, подскажите почему и как исправить?

spoiler
jQuery.fn.readmore = function(options){
	// настройки по умолчанию
	var o = jQuery.extend({
		length: 320,			//Видимое кол-во символов
		afterLength: '...',		//Текст после видимого содержания		
		fullText:true,			//Добавить ссылку для отображения скрытого текста
		moreText: 'Подробнее',	//Текст ссылки до показа скрытого содержания
		lessText: 'Свернуть'	//Текст ссылки после показа скрытого содержания
	},options);
	return this.each(function(){
		var 
		$el = $(this),
		elText = $.trim($el.text()),
		elLength = elText.length;
		if(elLength > o.length){ 
			var 
			textSlice = $.trim(elText.substr(0,o.length)),
			textSliced = $.trim(elText.substr(o.length));
			if(textSlice.length < o.length){
				var 
				textVisible = textSlice,
				textHidden = $.trim(elText.substr(o.length));
			}else{	
				var 
				arrSlice = textSlice.split(' '),
				popped = arrSlice.pop(),
				textVisible = arrSlice.join(' ') + ' ',
				textHidden = popped + textSliced  + ' ';
			};
			var 
			$elTextHidden = $('<span>').addClass('elTextHidden').html(textHidden),
			$afterLength = $('<span>').addClass('afterLength').html(o.afterLength + ' '),
			$more = $('<span>').addClass('more').html(o.moreText);
			$el.text(textVisible).append($afterLength).append($elTextHidden);
			var displayStyle = $elTextHidden.css('display');
			$elTextHidden.hide();
			if(o.fullText){
				$el.append($more);
				$more.click(function(){
					if($elTextHidden.is(':hidden')){
						$elTextHidden.css({display:displayStyle})	;
						$more.html(o.lessText);
						$afterLength.hide();
					}else{
						$elTextHidden.hide();
						$more.html(o.moreText);
						$afterLength.show();
					};
					return false;
				});
			}else{
				$elTextHidden.remove();
			};
		};
	});
};

Полный скрипт - https://yadi.sk/d/W6b3jbJ83W88w6
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
melodyn
@melodyn
Лучше нативная смерть, чем фреймворковая жизнь.
Как правильно делать выборку на jQuery: http://jquery.page2page.ru/index.php5/Селекторы
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы