提问人:Usman 提问时间:10/15/2020 更新时间:10/15/2020 访问量:273
阅读更多按钮 jQuery 隐藏仅适用于 WordPress 中 div 的第一个元素
read more button jquery hiding only work on first element of div in wordpress
问:
嗨,我对这段代码有问题,它只隐藏了 div 的前 p,我的 div 包含不同的标题和段落,我想隐藏所有前 180 个字符,但它只隐藏了前 li
<div class="product-short-description">
<h5>Product Description</h5>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
<h5>Product Details</h5>
<p>Material: Aluminium</p>
<p>Warranty: One Year Warranty Guarantee</p>
<p>Original: China</p>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
<h5>Shipping Information</h5>
</ul>
</div>
function bbloomer_woocommerce_short_description_truncate_read_more() {
wc_enqueue_js('
var show_char = 180;
var ellipses = "... ";
var content = $(".product-short-description").html();
//var content = $(".product-short-description").text().length
alert(content);
if (content.length > show_char) {
var a = content.substr(0, show_char);
var b = content.substr(show_char - content.length);
var html = a + "<div class=\'truncated\'>" + ellipses + "<a class=\'read-more\'>Read more</a></div><div class=\'truncated\' style=\'display:none\'>" + b + "</div>";
$(".product-short-description").html(html);
}
$(".read-more").click(function(e) {
e.preventDefault();
$(".product-short-description .truncated").toggle();
});
');
}
答:
0赞
Sco
10/15/2020
#1
以 PHP/HTML 格式显示 WP 函数 => https://developer.wordpress.org/reference/functions/wp_trim_words/
// PHP
$text = 'Lorem ipsum dolor';
$words = 2;
$more = ' … <a class=\'read-more\'>Read more</a>';
$excerpt = wp_trim_words( $text, $words, $more );
// $excerpt => Lorem ipsum … Read more
?>
<div class="product-short-description">
<div class="excerpt">
<?php echo $excerpt; ?>
</div>
<div class="truncated" style="display: none;">
<?php echo $text; ?>
</div>
</div>
JS 中的操作
// JS
$(".read-more").click(function(e) {
e.preventDefault();
$(".product-short-description .truncated").toggle();
$(".product-short-description .excerpt").toggle();
});
评论
0赞
Usman
10/16/2020
感谢您的回复,我无法访问我在前端与jQuery有关的所有代码,我正在使用您看到的上面的代码,我必须将段落限制在140个字符,包括标题li div等,如果您可以修改我的代码,那将有很大帮助。
评论