时间:2021-07-01 10:21:17 帮助过:4人阅读
话不多说,我们直接看代码
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>超过的文字用省略号代替的js写法</title>
- </head>
- <body>
- <script>
- function cutString(str, len) {
- //length属性读出来的汉字长度为1
- if(str.length*2 <= len) {
- return str;
- }
- var strlen = 0;
- var s = "";
- for(var i = 0;i < str.length; i++) {
- s = s + str.charAt(i);
- if (str.charCodeAt(i) > 128) {
- strlen = strlen + 2;
- if(strlen >= len){
- return s.substring(0,s.length-1) + "...";
- }
- } else {
- strlen = strlen + 1;
- if(strlen >= len){
- return s.substring(0,s.length-2) + "...";
- }
- }
- }
- return s;
- }
- window.onload=function(){
- var str = document.getElementById('cut_str').innerHTML;
- var s=cutString(str,15);
- document.getElementById('cut_str').innerHTML=s;
- }
- </script>
- <div class="js_cut_str"><p id="cut_str">超过的文字用省略号代替的js写法。</p></div>
- </body>
- </html>
实现效果图
总结
其实主要还是用到了js的substring
方法,实现这个功能还是很简单的,但是很实用,以上就是这篇文章的全部内容了,希望这篇文章对大家能有一定的帮助。