[javascript] 实现展开全文和收起全文效果

article/2025/8/28 5:21:42

在展示大量文本的时候,很多网站会在页面上出现一个展开全文的文字按钮 , 点击这个按钮才会展开全部内容 .

使用jquery比较容易实现 , 最开始我想直接根据vuejs的语法来实现效果 , 结果失败 , 还是jq做起来简单

思路是 , 获取当前文本的div高度 ,超过一定高度就增加一个class值 . 它旁边的点击展开全文默认隐藏 , 超过高度展示 .

展开全文点击后更换文字内容为收起全文

 

在vuejs中也可以正常使用jquery , 增加一个method

                displayAll(){$(function(){let obj=$("body").find(".mailMainIntro");let readMore=$(".readMore");readMore.hide();obj.removeClass("mainIntroZhe");obj.each(function(){let height=$(this).height();let text=$(this).text();console.log(height,text);if(height>67){$(this).addClass("mainIntroZhe");$(this).next().show();}});readMore.unbind("click").click(function(e){let text=$(this).text();if(text=="展开全文"){$(this).text("收起全文");$(this).prev().removeClass("mainIntroZhe");}if(text=="收起全文"){$(this).text("展开全文");$(this).prev().addClass("mainIntroZhe");}return;});});}

html部分是这样的

                                <el-row  v-for="(item, index) in weiboList" :key="index" class="mainAccountBox"><el-card :body-style="{ padding: '10px' }"><el-col :span="3"><el-avatar :size="60"><img :src="item.img" class="image"></el-avatar></el-col><el-col :span="21"><div class="mainAccountList"><div class="title">{{item.name}}</div><div class="mailMainIntro"  v-html="item.text" ></div><div class="readMore">展开全文</div><div class="turnWeibo" v-if="item.weibo!=null&&item.weibo.length!=0"><div class="title">@{{item.weibo.name}}</div><div class="mailMainIntro" v-html="item.weibo.text"></div><div class="readMore">展开全文</div></div><div class="mainTime">{{item.create_time}} <span v-html="item.source"></span></div><div class="bottom"><el-button type="primary" v-on:click="copySpecialTopicUrl(item.weibo_url)" class="button">复制URL</el-button><el-button type="primary" v-on:click="copySpecialTopicUrl('http://t.cn/'+item.short_url)" class="button">复制短URL</el-button><el-button type="success" class="button">推至CMS</el-button></div></div></el-col><div class="clearfix"></div></el-card></el-row>

ajax获取完数据后就执行一下displayAll方法

                getWeiboList: function () {let _this = this;let data={};if(this.weiboSearch != ""){data.word=this.weiboSearch;}if(this.pickTime != ""){data.dt=this.pickTime;}$.get('index.php?r=media/getdata',data, function (rs) {let res= JSON.parse(rs);_this.weiboList=res.result.rows;_this.displayAll();}).then(()=>{this.getTodayNums();});},

 


http://chatgpt.dhexx.cn/article/hvfgfifX.shtml

相关文章

uni-app,文本实现展开、收起全文

效果: 思路&#xff1a; 1.根据文本显示的布局中&#xff0c;每行大致能显示的文字个数。&#xff08;实例是大致每行26个文字&#xff09; 2.首先加载页面时&#xff0c;根据文字总长度判断是否超出自定义行数&#xff0c;来处理相应的数据&#xff0c;多余自定义行数&#…

[HTML+CSS+Vue.js] 超长文本等内容默认折叠显示,点击展开全文,再点击收起(仿知乎效果)

今天在做一个仿博客主页&#xff0c;日记的部分想做成折叠展开的效果&#xff0c;这样比较有利于浏览和交互&#xff0c;然后想起知乎问答的页面效果&#xff0c;就很符合我想要的样式&#xff1a; 因为之前没做过&#xff0c;不知从何下手&#xff0c;在网上查了大半天&#…

vue 展开全文,收起全文

样式效果 1.展开全文 2.收起全文 html <div class"content_box"><div class"cont_top"><div class"bluebox"></div><span>详情描述</span><span class"divider"></span></div&g…

html如何制作展开全文,如何实现文章内容页点击“展开阅读全文”的功能

我们在手机端看CSDN或知乎上的文章时&#xff0c;都会有一个点击展开阅读全文的按钮。这个功能效果使用还是很广泛的&#xff0c;网上也有很多这样的jq插件可以实现&#xff0c;今天小郭给大家分享一下自己在项目中常用到的js点击展开阅读全文的代码。 如下图&#xff1a; 完整…

令人头疼的“展开原文”,请收好这款神器!

互联网时代下&#xff0c;网上阅读资讯也早已成为用户习惯。 但近几年&#xff0c;随着互联网的发展&#xff0c;一个令人头疼的现象出现了&#xff0c;即网上越来越多文章&#xff0c;都需要点击一次&#xff0c;才能查看全文了&#xff0c;就像下面这样子…… 尤其对于网站的…

百度白皮书5.0解读如何合理设置展开全文功能

导读&#xff1a;2020年3月&#xff0c;百度发布了《百度APP移动搜索落地页体验白皮书5.0》。白皮书5.0发布后&#xff0c;收到许多开发者关于体验规范的反馈建议&#xff0c;针对开发者集中关心的规范问题&#xff0c;百度搜索将推出白皮书5.0系列解读文章&#xff0c;精准助力…

Mac快捷输入iPhone短信验证码

一、验证码输入&#xff1a; 二、设置步骤&#xff1a; iPhone&#xff1a;设置->短信->短信转发->打开 Mac开关

Web功能设计:验证码

验证码 简介实现简介 验证码(CAPTCHA——Completely Automated Public Turing test to tell Computers and Humans Apart,全自动区分计算机和人类的图灵测试),是一种区分用户是计算机还是人的公共全自动程序。作用:防止恶意破解密码、刷票、论坛灌水或某个黑客对某一个特定…

输入验证码投票功能的实现

点击投票的时候判断投票的时间是否在这个活动时间内 获取当前时间 传到后台和活动时间判断 投票的时间是否在这个活动时间之内 如果在的 话 弹出验证码 输入验证码投票 中间插一句验证码功能 前台 后台 生成和校验 在验证码有误之后 重新调用验证码方法刷新 验证码成…

登录时候输入验证码,验证码图片从服务器获取方法

登录时候输入验证码&#xff0c;验证码图片从服务器获取方法 小验证码图片 源码分享&#xff1a;http://pan.baidu.com/s/1skK7jRJ 展示效果&#xff1a; 登录时候输入验证码&#xff0c;验证码图片从服务器获取方法 - wangyue.123.com - moonstak jsp页面&#xff1a; <…

iOS 分割输入验证码的视觉效果

通常情况下&#xff0c;在用户注册或者登录的时候我们会用到手机验证码&#xff0c;而有时就会需要&#xff0c;分割输入验证码的视觉效果。 那这种情况&#xff0c;我们怎么实现呢&#xff1f; 在网上查了很多&#xff0c;好多都只是给了实现代码&#xff0c;给的东西都不是很…

input输入框模拟验证码输入效果

今天看到一个帖子&#xff0c;说到用input输入框模拟滴滴、摩拜等app验证码输入效果&#xff0c;提到了一个方案&#xff1a; 1、利用input来获得焦点&#xff0c;自动调用手机的数字键盘 2、实际将输入框用透明度隐藏 3、用label的for属性与input联动来显示输入的数字 于是…

vue实现验证码输入

需求&#xff1a;这种样式的验证码输入&#xff0c;进入页面时光标停留在第一个格子&#xff0c;随着输入的数字向后移动。 实现逻辑&#xff1a; ①首先考虑样式&#xff0c;将六个格子及获取光标的样式写出来。 ②需要一个input框作为输入&#xff0c;所以在页面上加input框&…

爬虫验证码-手动输入

一般网站登录的时候会有验证码的问题,下面是将验证码下载到本地,手动输入模拟登录。在请求的时候使用会话是为了保证获取的验证码、表单令牌等数据一致 import requestsfrom bs4 import BeautifulSoupheaders = {User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWeb…

小程序多个输入框输入验证码功能 实现

老套路,先上图 <view class"check"><!-- 输入核验码 --><view class"query"><view class"query_item_name">请输入核验码</view><view class"query_num_block"><input typenumber class"…

手机计算机上输入错误是什么意思,电脑输入验证码总是提示错误该怎么解决?...

不少同学都遇到过在页面中输入验证码总是错误的问题&#xff0c;并且不管更换几次验证码图片&#xff0c;依然提示验证码错误&#xff0c;着实影响心情&#xff0c;接下来小编总结了一部分造成验证码总是错误的原因以及解决办法&#xff0c;希望对大家有所帮助; 第一种&#xf…

Python模拟登陆古诗文网手动输入验证码显示验证码错误

Python模拟登陆古诗文网手动输入验证码显示验证码错误 import requests from lxml import etree sessionrequests.Session() headers {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.128 Safari/537.36,}…

自定义验证码输入框:VerificationCodeView

先上两张效果图&#xff1a; 1.java类&#xff1a; package com...ui;import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Color; import android.text…

案例:登录中输入验证码(Session及JSP技术应用)

案例&#xff1a;登录中输入验证码(会话技术) 1.案例需求&#xff1a;1.访问带有验证码的登录页面login.jsp2.用户输入用户名&#xff0c;密码以及验证码如果用户和密码输入有误&#xff0c;跳转登录页面。提示&#xff1a;用户或密码错误如果验证码输入有误&#xff0c;跳转登…