文字超出...展开

<div id="hutia">

<script type="text/javascript">
(function(){
var o = document.getElementById("hutia");
Subt(o);
})();
function Subt(obj){
var s = obj.innerHTML;
var p = document.createElement("span");
var n = document.createElement("a");
p.innerHTML = s.substring(0,100);
n.innerHTML = s.length > 100 ? "...展开" : "";
n.href = "###";
n.onclick = function(){
if (n.innerHTML == "...展开"){
n.innerHTML = "收起";
p.innerHTML = s;
}else{
n.innerHTML = "...展开";
p.innerHTML = s.substring(0,100);
}
}
obj.innerHTML = "";
obj.appendChild(p);
obj.appendChild(n);
}
</script>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现文字长列表超出一行展示展开收起的效果,可以使用 CSS 的 `text-overflow` 属性和一些 JavaScript 代码来实现。下面是一个实现的示例: HTML 结构: ```html <div class="long-list"> <div class="content">这是一个很长的列表,可能超出一行。</div> <button class="toggle-btn">展开</button> </div> ``` CSS 样式: ```css .long-list { max-height: 1.2em; /* 设置列表的最大高度为一行的高度 */ overflow: hidden; /* 隐藏超出部分 */ position: relative; /* 设置相对定位,用于定位展开按钮 */ } .content { white-space: nowrap; /* 设置文本不换行 */ overflow: hidden; /* 隐藏超出部分的文本 */ text-overflow: ellipsis; /* 使用省略号表示被隐藏的文本 */ } .toggle-btn { position: absolute; /* 设置绝对定位,用于定位展开按钮 */ bottom: 0; /* 将展开按钮定位在列表底部 */ right: 0; /* 将展开按钮定位在列表右侧 */ } ``` JavaScript 代码: ```javascript document.querySelector('.toggle-btn').addEventListener('click', function() { var longList = this.parentNode; if (longList.classList.contains('expanded')) { longList.classList.remove('expanded'); this.textContent = '展开'; } else { longList.classList.add('expanded'); this.textContent = '收起'; } }); ``` 上述代码中,我们使用了 `text-overflow: ellipsis` 将超出一行的文本显示为省略号,然后通过 JavaScript 监听展开按钮的点击事件来切换列表的展开状态,并修改按钮的文本。 你可以根据需要调整样式和 JavaScript 代码,以适应你的项目需求。希望对你有所帮助!如果你还有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值