问题标签 [ellipsis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jquery - CSS/JQuery 在悬停时支持横向滚动文本
我在我运行的网站上有一个 twitter 提要。但是,它在小屏幕上会被切断。我有一个足够高的栏,可以容纳 1 行我有最新推文的文本。如果推文太长,我希望推文在最后省略或淡出。但是在悬停时,我希望文本向左缓慢滑动,从而暴露隐藏的部分。
当您突出显示标题比屏幕宽的歌曲时,会在 iPod classic 上使用此效果。(我希望你明白我的目的。)
我只是好奇我将如何实施这样的事情?如何强制文本保持在一行?
c++ - 我的编译器允许“T&...”。这是一个扩展吗?
当以下工作时我很惊讶
我认为我必须将“T”声明为“typename ...T”,并且它只适用于 C++0x。但以上是在严格的 C++03 模式下编译的。这是怎么回事?
firefox - 文本溢出:Firefox 4 中的省略号?(和FF5)
text-overflow:ellipsis;
CSS 属性必须是 Microsoft 为 Web 所做的少数几件事之一。
现在所有其他浏览器都支持它……除了 Firefox。
Firefox 开发人员自 2005 年以来一直在争论它,但尽管有明显的需求,但他们似乎无法真正实现它(即使是实验性-moz-
实现也足够了)。
几年前,有人想出了一种破解 Firefox 3 以使其支持省略号的方法。hack 使用该-moz-binding
功能使用 XUL 来实现它。相当多的网站现在都在使用这个 hack。
坏消息?Firefox 4 正在删除该-moz-binding
功能,这意味着此 hack 将不再起作用。
因此,一旦 Firefox 4 发布(我听说本月晚些时候),我们将回到它无法支持此功能的问题。
所以我的问题是:还有其他方法吗?(如果可能的话,我会尽量避免使用 Javascript 解决方案)
[编辑]
很多赞成票,所以我显然不是唯一一个想知道的人,但到目前为止我有一个答案,基本上是“使用 javascript”。我仍然希望有一个根本不需要 JS 的解决方案,或者在最坏的情况下仅将其用作 CSS 功能不起作用的备用方案。所以我将在这个问题上发布一个赏金,如果有人在某个地方找到了答案。
[编辑]
更新:Firefox 已进入快速开发模式,但尽管 FF5 现已发布,但仍不支持此功能。而现在大部分用户已经从 FF3.6 升级,hack 不再是一个解决方案。好消息告诉我,它可能会被添加到 Firefox 6 中,随着新的发布时间表,它应该在几个月内就出来了。如果是这样的话,那我想我可以等一下,但很遗憾他们不能早点解决它。
[FINAL EDIT]
我看到省略号功能终于被添加到了火狐的“极光频道”(即开发版)中。这意味着它现在应该作为 Firefox 7 的一部分发布,该版本将在 2011 年底发布。真是松了一口气。
此处提供发行说明:https ://developer.mozilla.org/en-US/Firefox/Releases/7
algorithm - 省略一组名称
好吧,我敢肯定,某个地方一定有人已经为此提出了一个算法,所以我想在我自己去(重新)发明它之前先问问。
我有一个任意(用户输入的)非空文本字符串的列表。每个字符串可以是任意长度(0 除外),并且它们都是唯一的。我想将它们显示给用户,但我想将它们修剪为我决定的某个固定长度,并用省略号 (...) 替换其中的一部分。问题是我希望所有输出字符串都是唯一的。
例如,如果我有字符串:
- 微软 Internet Explorer 6
- 微软 Internet Explorer 7
- 微软 Internet Explorer 8
- 火狐浏览器 3
- 火狐浏览器 4
- 谷歌浏览器 14
然后我不想修剪字符串的末端,因为那是唯一的部分(不想显示“Microsoft Internet ...”3次),但可以剪掉中间部分:
- 微软...重新 6
- 微软...重新 7
- 微软...重新 8
- 火狐浏览器 3
- 火狐浏览器 4
- 谷歌浏览器 14
其他时候,中间部分可能是独一无二的,我想修剪结尾:
- 公司会议纪要,2010 年 5 月 25 日——仅供内部使用
- 公司会议纪要,2010 年 6 月 24 日——仅供内部使用
- 公司会议纪要,2010 年 7 月 23 日——仅供内部使用
可能变成:
- 公司会议纪要,2010 年 5 月 25 日...
- 公司会议纪要,2010 年 6 月 24 日...
- 公司会议纪要,2010 年 7 月 23 日...
我想它可能永远不应该省略字符串的开头,即使否则会被允许,因为这看起来很奇怪。而且我猜它可能会在字符串中省略一个以上的位置,但在合理范围内 - 也许 2 次就可以了,但 3 次或更多似乎过多。或者,次数可能不如剩余块的大小重要:椭圆之间少于大约 5 个字符将毫无意义。
输入(数量和大小)不会太大,因此性能不是主要问题(好吧,只要算法不尝试一些愚蠢的事情,比如枚举所有可能的字符串,直到找到一个有效的集合!) .
我想这些要求看起来很具体,但我实际上相当宽容——我只是想描述一下我的想法。
以前有过这样的事情吗?是否有一些现有的算法或库可以做到这一点?我用谷歌搜索了一些,但到目前为止没有发现任何类似的东西(但也许我只是不擅长谷歌搜索)。我必须相信某个地方已经有人想要解决这个问题了!
javascript - 在 Javascript 中修剪和创建文本省略号不是基于字符数,而是基于换行符的数量
我想编写一个函数,该函数接收一些文本并根据它具有的换行符数对其进行修剪,我希望它在达到 6 个换行符后修剪并放置“...阅读更多”,有点像Facebook 对评论和墙贴的作用。
谢谢你。
javascript - HTML - 如何仅在激活省略号时显示工具提示
我的页面中有一个包含动态数据的跨度,带有ellipsis
样式。
我想在此元素工具提示中添加相同的内容,但我希望它仅在内容较长且省略号出现在屏幕上时出现。
有什么办法吗?浏览器在激活
时会抛出事件吗?ellipsis
*浏览器:Internet Explorer
arrays - 在 Powershell 中输出数组的哈希表
我已经黔驴技穷了。我是 powershell 的新手,我已经尝试了所有我能在网上找到的关于这个主题的东西。我想要做的是将数组的哈希表打印到文件中,而不会在每个数组值的末尾出现愚蠢的省略号。下面是我最好的尝试。
在这一切之后,我仍然得到这个结果:
Date_Sent PSV_Types
--------- --------- 20091201
{31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}
20091202 {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}
20091203 {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}
20091204 {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}
20091207 {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}
20091208 {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}
20091209 { 31,分配,AUDIT_TRAIL,书籍...}
20091210 {31,分配,AUDIT_TRAIL,书籍...}
20091211 {31,分配,AUDIT_TRAIL,书籍...} 20091214 {31,分配
,AUDIT_TRAIL,书籍...}
20091215 {31,分配,AUDIT_TRAIL,书籍...}
在powershell方面更聪明的人请告诉我我错过了什么。我如何在最后去掉这些血腥的省略号,不管有多少数组的所有成员都写出来?我是否必须通过构建一个大字符串缓冲区并将其输出到文件来推出一些贫民窟解决方案,还是有更好的方法来做到这一点?
谢谢。
delphi - Delphi:如何以要求的宽度和行数绘制一些文本,并以省略号结尾?
我需要在具有固定宽度(以像素为单位)和固定数量的文本行的表格单元格中绘制一些文本。如果文本被单元格矩形剪切,它必须以省略号结尾。问题是我无法正确计算文本矩形(或者 TextRect/DrawText 过程无法正常工作,我不确定)。
我尝试使用这种计算文本矩形的方法:
剪裁矩形已正确计算,但省略号未出现。
当我将裁剪矩形的高度减少 1 个像素时出现省略号:
但是我的文本底线的一些像素随后被剪裁了。
如何正确执行?
html - html/CSS 省略号
我试图让省略号像这样工作:http: //jsfiddle.net/583mK/1/
有趣的是,它在 jsFiddle 上运行良好。奇怪的事情给出了完全相同的 HTML/CSS,它在我的应用程序上不起作用,我不知道为什么。是否有任何省略号陷阱可能导致此问题?
一个很大的区别在于 Fiddle,它都是静态内容。在我的应用程序中,页面加载,jQuery 模板用于填充列表,然后我想要一个省略号。
文本没有溢出,所以溢出正在工作,而空白正在工作,而不是......省略号。
javascript - 如何以最短的延迟将省略号插入 HTML 中的大型数据集中
如果内容太宽提到如何在 HTML 内容中插入省略号,则在 HTML 标记中插入省略号 (...) 。此解决方案有效,但我发现当它应用于大型数据集(想象 1,000 个 div)时,它往往会变得非常慢。
我的 JSFiddle演示了这个问题。将我设置的变量 (numberOfDivs) 从 10 更改为 100 会显着增加输出结果所需的时间。将此数字从 100 更改为 1000,会导致 Chrome 想要终止该页面。
似乎 Jquery 的解决方案,以及我见过的其他解决方案,都涉及使用文本填充 DOM 中的元素(我相信我使用的 Jquery 插件做了类似的事情,对于大型数据集来说似乎很昂贵)或使用功能IE7 和其他较旧的浏览器不支持 (text-wrap:ellipsis)。
在处理大量数据时,似乎任何获取element.offsetWidth
或获取昂贵的调用都是如此。element.clientWidth
有没有人发现任何优化或强大的服务器端解决方案?当我说强大的服务器端解决方案时,我的意思是考虑到文本的大小和包含 div(或其他元素)的大小。简单地做一个文本的子字符串是一种解决方案,但我不认为这很健壮。