我如何在具有“拖动”的文本上实现水平滚动功能;文本溢出:省略号;没有滚动条
How can I implement horizontal scroll on drag functionality on text that has "text-overflow: ellipsis" without the scrollbar?
我有几行文本,每行都封装在固定宽度的段落标记中。它们的长度不同。因此,我用"text overflow:省略号"截断行,并用"overflow:hidden"隐藏滚动条。
HTML:
<p>This is a short line</p>
<p>This line is a little bit longer</p>
<p>This is a really very long very long very long line</p>
<p>This is a short line</p>
<p>This line is a little bit longer</p>
<p>This is a really very long very long very long line</p>
<p>This is a short line</p>
<p>This line is a little bit longer</p>
<p>This is a really very long very long very long line</p>
CSS:
p {
width: 150px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
我希望能够拖动滚动来查看整行是什么,但不显示滚动条。
这里有一个带有默认滚动条的jsfiddle,它允许我进行滚动,还有一个带有"overflow:hidden"属性的jsfiidle,它可以按照我需要的方式截断行,但不需要滚动。
那么,有什么可能隐藏滚动条但保持拖动滚动功能的方法呢?它能用纯HTML和CSS完成吗?或者我必须写JS甚至jQuery?
嗨,我为你写了一个简单的方法,你可以开发它
var clicked = 0;
var regular = 0;
$(document).ready(function(){
$("p").mousedown(function(){
clicked = 1;
regular = 0;
});
$("p").mouseup(function(){
clicked = 0;
});
$("p").mousemove(function(event, a, b){
var p = $(this);
if( event.offsetX > (p.width() - 30) && clicked == 1){
console.log((regular - 1));
regular--;
p.css({"text-indent":(regular) + "px"});
}
if( event.offsetX < 30 && event.offsetX > 0 && clicked == 1){
console.log((regular - 1));
regular++;
p.css({"text-indent":(regular) + "px"});
}
});
});
JSFiddle:http://jsfiddle.net/k4mhohc8/4/
相关文章:
- JQuery使用相同的功能自动完成各种输入文本
- jQuery自动完成功能不适用于多个文本输入
- 第二次点击具有不同功能的按钮并更改文本
- 触发功能时做机场插件文本效果
- JavaScript功能不会自动添加具有价格的文本框
- 正在寻找具有多种功能的文本编辑器
- 修复Javascript代码以将文本中的所有Youtube链接转换为Youtube ID功能
- jQuery:在整个文档上触发按键功能,但不在输入和文本区域内
- 如何在文本框中添加标签支持'点击粘贴'功能
- 使用功能更改文本并包含项目符号图像
- 具有搜索文本的功能,不能很好地处理标点符号/符号.Jquery/Jquery mobile.
- 在选择某些项目时显示文本和列表的功能
- 如果处理字符串值的文本区域是只读的,如何使用 JavaScript 在虚拟键盘上使用 CAPSLOCK 功能
- 快速滚筒嘘声+获取文本功能
- CLEditor,将内容粘贴为主窗口中的文本功能
- 自定义加载更多文本功能
- 允许丰富文本功能的输入框
- jQuery文本功能不能正常工作
- d3中的作用域问题.文本功能
- 输入和文本功能