acrescente o link "mostrar mais" ao parágrafo truncado somente se a quantidade definida de caracteres for atendida
Quero acrescentar o link "mostrar mais" (se clicado, revelará o conteúdo que foi aparado / oculto) ao meu parágrafo somente se a quantidade de caracteres X for passada.
Por exemplo, defino o mínimo para 120 caracteres, e o parágrafo tem apenas 60, portanto, não preciso anexar o link "mostrar mais".
Como posso resolver isso? O código abaixo funciona muito bem, mas aplicará "mostrar mais" a qualquer parágrafo que eu tenha, embora seja menor que o valor X. O que devo fazer?
https://jsfiddle.net/vm0uj7fc/1/
var charLimit = 122;
function truncate(el) {
var clone = el.children().first(),
originalContent = el.html(),
text = clone.text();
el.attr("data-originalContent", originalContent);
clone.text(text.substring(0, charLimit) + "...")
el.empty().append(clone);
}
function reveal(el) {
el.html(el.attr("data-originalContent"));
}
$("a").on("click", function (e) {
e.preventDefault();
var truncateElement = $(this).parent().prev().find(".truncate");
if ($(this).text() === "Read More") {
$(this).text("Read Less");
reveal(truncateElement);
} else {
$(this).text("Read More");
truncate(truncateElement);
}
});
$(".truncate").each(function () {
truncate($(this));
});
para recapitular:
Preciso acrescentar o "leia mais" dinamicamente com (.append function?)Verifique os caracteres e, se for menor, o valor máximo NÃO será exibido. Leia maisopcional, se alguém puder criar Javascript puro, essa seria a escolha preferida, caso contrário, eu estou bem com alguma refatoração de código iniciando no meu código acima