2013-02-15 2 views
0

я должен использовать собственный блог Cms, которая делает это «Резюме маркер», который содержитУдалить содержимое и добавить класс с JQuery

  1. elipsis
  2. динамическое изменение компоновки (поэтому ссылка всегда разные)
  3. статический текст, который гласит: Нажмите здесь, чтобы узнать больше.

Это, как в настоящее время суммарного маркер оказывает на странице:

<p>Content goes here....<a href="example.htm">Click here to read more.</a></p> 
<p>More content goes here....<a href="anothertest.htm">Click here to read more.</a></p> 
<p>Content goes here....<a href="helloworld.htm">Click here to read more.</a></p> 

Между тем, я хотел бы контролировать сводной маркер с некоторыми JQuery, так что я не ограничивается его жестким дисплеем:

  1. удаление каждого ellipsis
  2. используя символ class ТОЛЬКО после href, который содержал многоточие, так что это не обновить другие ссылки на странице.

Это был бы очень желаемый ожидаемый результат.

<p>Content goes here.<a href="example.htm" class="readmore">Click here to read more.</a></p> 
<p>More content goes here.<a href="anothertest.htm" class="readmore">Click here to read more.</a> 
<p>Content goes here.<a href="helloworld.htm" class="readmore">Click here to read more.</a> 

Большое Вам спасибо за помощь!

Это то, что я получил, что плохо я знаю

$("p").html("...").remove:after.attr(".readmore").attr("href")); 
+0

Так что, что или кто «* не обновляет другие ссылки на странице * «? – Alexander

ответ

1
$('p').each(function() { 
    var textNode = $(this).find('a:last-child').addClass('readmore')[0].previousSibling; 

    textNode.textContent = textNode.textContent.replace(/\.{3}\s*$/, ''); 
}); 

Вот скрипка: http://jsfiddle.net/sH2eA/

+0

Я думаю, что для этого нужен мелкий шрифт, описывающий, что он изменит неожиданные элементы. – Alexander

+0

должен заменить только последний '...'; не все_; – mshsayem

+0

Я обнаружил, что это не работает в IE8, ошибка, возвращаемая 'textContent', является нулевым или не является объектом. Это работало в IE9, firefox, chrome. – Evan