更新& lt; a>文本没有任何延迟
Updating <a> text without any lag
我在一个页面上有多个图像,下面是所有者的名字。这是由PHP打印的。有些名字很长(这打乱了页面布局)。我可以很好地在PHP中截断它们,但我决定用JS代替。
我是这样做的:
$(document).ready(function() {
truncateNames(".users .a", 50);
}
function truncateNames(usernameID, maxChars){
$(usernameID).each(function() {
var longName = $(this).text();
if(longName.length > maxChars){
$(this).html(longName.trunc(maxChars));
}
});
}
// Taken from another question at http://goo.gl/fY4s4. Thanks KooiInc!
String.prototype.trunc =
function(n,useWordBoundary){
var toLong = this.length>n,
s_ = toLong ? this.substr(0,n-1) : this;
s_ = useWordBoundary && toLong ? s_.substr(0,s_.lastIndexOf(' ')) : s_;
return toLong ? s_ + '…' : s_;
};
可以正常工作。但问题是,在被截断之前,我可以在几秒钟内看到长名称。这也使得混乱的布局可见,因为名字很长,一旦名字被截断,就会自动修复。
如何解决这个问题?
CSS:
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
SASS:
@mixin text-truncate {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
JavaScript可能不是这里的方法,因为在手动截断所有文本之前必须等待文档加载。我建议以下CSS解决方案:
div.ellipsize {
width: 200px;
border: 1px solid #000;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
<div class="ellipsize">Long text that's gonna get cut off</div>
相关文章:
- 函数参数中的数据与指定变量之间的任何性能差异
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- jQuery中是否内置了任何字符串格式化函数
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 是否有任何snippet或jQuery插件可以列出easylist.txt模式匹配的DOM中的所有元素
- 可以简化嵌套的延迟Q Promises解析吗
- 有任何可能将facebook实时信使整合到一个网站中
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- AJAX:$_GET不返回任何值
- 在同一个服务工作者中处理service-worker.js有任何影响吗
- onclick函数需要双击,因为类分配延迟
- 将事件处理程序绑定到任何可能的事件
- 是否有任何方法可以像处理jQuery中附加到XHR延迟对象的done方法处理程序一样处理websocket onmess
- jQuery-在窗口滚动上运行一个函数,没有任何延迟
- 如何延迟对 javascript 对象的任何方法的所有调用,直到对象初始化
- 任何延迟边缘动画直到可见的方法
- 尝试使用链接延迟,但我尝试的任何代码都不工作
- 有任何javascript AMD框架使用延迟吗?
- 更新& lt; a>文本没有任何延迟
- 我试图在不使用任何内置方法的情况下延迟此函数.为什么这行不通呢?