Javascript: 截取字符串多出来并用省略号[...]显示

/背景知识/

substring 方法用于提取字符串中介于两个指定下标之间的字符

substring(start,end)

开始和结束的位置,从零开始的索引

参数描述

start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。

返回值

一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。

说明

substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。

如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。

如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。

如果 start 或 end 为负数,那么它将被替换为 0

/实际应用:截取字符串多出来并用省略号[...]显示/

在线演示:http://codepen.io/anon/pen/yNXyMX

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>js 截取字符串多出来并用省略号...显示</title>
	<style type="text/css">
	.content{
		width: 200px;
	        margin: 100px auto;
		padding: 15px;
		background-color: orange;
		color: #fff;
	}

	.btn {
	  float: right;
	  background-color: #fff;
	  color: #333;
	  font-size: 12px;
	  padding: 4px 8px;
	  border-radius: 3px;
	  margin-top: 5px;
	  text-shadow: 0 0 1px rgba(0,0,0,.25);
	  box-shadow: 0 0 1px rgba(0,0,0,.25);
     }

.move{
	 -webkit-transition:all ease-in-out .35s;
	 transition:all ease-in-out .35s;
	 -webkit-animation:showIn 1.4s cubic-bezier(0, 0, 0.2, 1);
         animation:showIn 1.4s cubic-bezier(0, 0, 0.2, 1);
         -webkit-animation-fill-mode: backwards;
         -moz-animation-fill-mode: backwards;
         -o-animation-fill-mode: backwards;
          animation-fill-mode: backwards;
     }

@keyframes showIn{
    0%{ opacity: .5;}
    60%{transform: scale(1.2);}
    100% { -o-transform: scale(1.0);opacity: 1.0;}
    }

@-webkit-keyframes showIn{
    0%{ opacity: .5;height: 20%;}
    60%{-webkit-transform: scale(1.2);}
    100% { -webkit-transform: scale(1.0);opacity: 1.0;}
   }
	</style>
</head>
<body>
<div class="content">
 <span>
substring 方法用于提取字符串中介于两个指定下标之间的字符

substring(start,end)

开始和结束的位置,从零开始的索引
substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
如果 start 或 end 为负数,那么它将被替换为 0

</span><span class="btn">收缩</span>

</div>

<script type="text/javascript">
	var oDiv=document.getElementsByTagName(‘div‘)[0];
	var arr_span=document.getElementsByTagName(‘span‘);
        var str=arr_span[0].innerHTML;
	var onOff=true;
       arr_span[1].onclick=function(){
    	if(onOff){
        arr_span[0].innerHTML=str.substring(0,43)+‘...‘;
    	arr_span[1].innerHTML=‘展开‘;

    	oDiv.classList.add(‘move‘);
    	onOff=false;
    	}else{
    	arr_span[0].innerHTML=str;
    	arr_span[1].innerHTML=‘收缩‘;

    	oDiv.classList.remove(‘move‘);
    	onOff=true;
    	}

    }
</script>
</body>
</html>

  

时间: 2024-10-10 15:13:12

Javascript: 截取字符串多出来并用省略号[...]显示的相关文章

Js自动截取字符串长度,添加省略号“……”

JavaScript字符串处理函数,根据定义的长度截取字符串,超出部分裁掉追加……,很多时候网页上显示的内容需要缩成“...”该方法用于处理字符串显示固定长度,超长部分用“...”代替: /**参数说明: * 根据长度截取先使用字符串,超长部分追加… * str 对象字符串 * len 目标字节长度 * 返回值: 处理结果字符串 */ function cutString(str, len) { //length属性读出来的汉字长度为1 if(str.length*2 <= len) { ret

javascript截取字符串的最后几个字符

在JavaScript中截取字符串一般是使用内置的substring()方法和substr()方法,这两个方法功能都很强大,也都能实现截取字符串中的最后几个字符. substring()方法 JavaScript中的String对象提供了一个substring(int from, int to)方法用于截取字符串中位置为from到to-1位置的字符. 因为字符串的字符位置是从0开始的,而substring(int from, int to)方法是前闭后开的,即[from, to),可以理解为[f

thinkphp内置截取字符串函数无法显示省略号解决方法

thinkphp内置截取字符串函数无法显示省略号解决方法 functions.php function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true){ if(function_exists("mb_substr")) {      if($suffix)    {         if($str==mb_substr($str, $start, $length, $charset))

CSS截取字符串,多余文字用省略号显示

最近才知道css也有这么叼炸天的一面~~~ 做个类似论坛的页面,用户头像70px,但是用户名没法限定啊,英文中文都可以,你说他要是取个"我的名字好长呀,你该怎么办呢",那老衲不就蛋疼菊花紧了~~ 幸好,老衲于不幸中的万幸中发现了css这么叼炸天的一面,以前一直不知道,写出来分享给大家 很简单,大屁不多放,直接开菊花: css里面如下设置: a.name{ line-height: 30px; text-align: center; text-overflow:ellipsis;//让超

JavaScript截取中英文字符串

有时在显示某段文字的时候,可能会太长,影响我们页面的显示效果.如果仅是英文,那么我们可以用String.substring(start, end)函数就已经够用了.但是通常我们都会遇到既有英文,又有汉字的情况.而汉字是占用2个字节的,如果用String.substring(start, end)截取字符串的话,会发现汉字截取后比英文截取后个数虽然相同,但是长度还是长出去不少(具体要视字符个数来决定).繁峙县粮食局 下面是一个实现这个功能的函数: <script language="java

只显示 前100个字 java 实现截取字符串!使用! &lt;c:if test=&quot;${fn:length(onebeans.info)&gt;100 }&quot;&gt;${ fn:substri

博客 文章 只显示 前100个字 java 实现截取字符串!使用! <c:if test="${fn:length(onebeans.info)>100 }">${ fn:substri http://blog.csdn.net/tfy1332/article/details/22811835 2014-04-02 17:14 3406人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许不得转载. <%@ taglib prefix=&qu

使用CSS如何实现截取标题并用省略号表示超出部分

使用CSS如何实现截取标题并用省略号表示超出部分:建议:尽可能的手写代码,可以有效的提高学习效率和深度.众多的网站都有这样的效果,当新闻标题过长的时候,一般都会截取一部分,并且会在末尾使用省略号(...)表示被截取掉的部分.这样的效果当然也可以由后台程序员来完成,当然前台人员利用CSS也可以实现此效果,可以省却很多后台代码,有着不小的有点.下面简单介绍一下如何实现此种效果.代码实例如下: <!DOCTYPE html> <html> <head> <meta ch

js 内容显示过长截取字符串

//截取字符串function cut(cutelement, cutlength) {         var cutelement = $(cutelement);    $.each(cutelement, function (i, item) {        if (item.innerText.length > cutlength) {//循环判断cutelement中含有的字数            item.innerText = item.innerText.substring

JavaScript字符串對象substr方法入門實例(用於截取字符串)

JavaScript substr 方法 substr 方法用於根據開始位置和長度截取字符串並返回截取部分字符串.其語法如下:復制代碼 代碼如下:str_object.substr(start, length) 參數說明: 參數 說明 str_object 要操作的字符串(對象) start 必需.開始截取的位置,從 0 開始計算:如果為負數則從字符串末尾開始計算(經測試,某些浏覽器版本下無效) length 可選.指要截取的字符串長度,省略則至到字符串結束 提示:substr 方法不符合 EC