文字列の最初のカンマの後に文字列を非表示にしたい。
例:ABCDEF、GHIJKL、MNOPQR。
出力:ABCDEF ..もっと見る
<h2 class="minimize"><?php echo $string; ?></h2>
<script type="text/javascript">
var minimized_elements = jQuery('h2.minimize');
minimized_elements.each(function(){
var t = jQuery(this).text();
if(t.length < 32) return;
jQuery(this).html(
t.slice(0,32)+'<a href="#" class="more_detail">Show More >></a>'+
'<span style="display:none;">'+ t.slice(32,t.length)+' <a href="#" class="less_detail">< Show Less</a></span>'
);
});
jQuery('a.more_detail', minimized_elements).click(function(event){
event.preventDefault();
jQuery(this).hide().prev().hide();
jQuery(this).next().show();
});
jQuery('a.less_detail', minimized_elements).click(function(event){
event.preventDefault();
jQuery(this).parent().hide().prev().show().prev().show();
});
</script>
このコードを使用しましたが、機能しません。
私を助けてください。
上のjQueryの、あなただけのことができspit
、文字列
$(function(){
var minimized_elements = jQuery('h2.minimize');
minimized_elements.html(function(){
var arr = $(this).text().split(",");
if ( arr.length === 1 ) return arr[0];
return arr.shift() + '<a href="#" class="more_detail">Show More >> </a>'+'<span style="display:none;">, ' + arr.join(",") + ' <a href="#" class="less_detail"> < Show Less </a> </span>';
});
jQuery('a.more_detail', minimized_elements).click(function(event){
event.preventDefault();
jQuery(this).hide().prev().hide();
jQuery(this).next().show();
});
jQuery('a.less_detail', minimized_elements).click(function(event){
event.preventDefault();
jQuery(this).parent().hide().prev().show().prev().show();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<h2 class="minimize">ABCDEF ,GHIJKL , MNOPQR</h2>
<h2 class="minimize">11111 ,2222 , 3333</h2>
<h2 class="minimize">ABCDEF</h2>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加