【发布时间】:2022-06-17 23:25:17
【问题描述】:
我需要一些帮助来编写一个包含多个 if 语句的函数(除非有更好的方法)。我基本上想根据窗口大小截断文本长度。所以如果视口小于400px,文字长度大于35,那么就用下面这个方法截断吧……
$('option').each(function () {
var text = $(this).text();
if (text.length > 35) {
text = text.substring(0, 35) + '...';
$(this).text(text);
}
});
调整窗口大小的功能(基本上是上下结合):
$(document).ready(function(){
if($( window ).width() < 400){
//do something;
}else{
//do something else;
}
});
$( window ).resize(function() {
if($( window ).width() < 400){
//do something;
}else{
//do something else;
}
});
进行了更多研究并使用此代码:
$(document).ready(myfunction);
$(window).on('resize',myfunction);
$('option').each(myfunction);
function myfunction() {
var text = $(this).text();
if (text.length > 35 == ($(window)).width() < 400) {
text = text.substring(0, 35) + '...';
$(this).text(text);
}
}
我想知道数学函数是否/如何将视口宽度计算为一个范围并将截断更改为最大断点?
【问题讨论】:
-
有什么特别的理由不使用css吗?
-
这专门用于选择框中的选项。选项标签忽略样式。问题是一些选项的值非常长,而另一些则没有。我测试了默认行为,选项框扩展到内容。在桌面上不是一个大问题(不是很好看),但在移动设备上这是一个问题。我试图避免为此使用另一个 js 库。
标签: javascript jquery substring truncate window-resize