我尝试了几件事情,试图使这项工作,我不知道是否有可能。我有选择的插件(http://harvesthq.github.io/chosen/)。我想要做的是以下几点:jquery更新选项
- 检查每一个选项
- 的长度,如果该选项比一定规模 更大*切,并添加“...” *添加工具提示的充分字符串
工具提示工作正常,我不管理的是用新(...)字符串重新绘制选择。所选的字符保持全字符串。
这里是我的代码
$("select").chosen().each(function() {
$(this).on("liszt:showing_dropdown", function() {
if($(this).parent().is('.myContentClass')){
$(this).next().find('li').each(function(){
var size = measureText($(this).text(), 12, 'Tahoma')
var limit = MyWidth - 50;
if(size.width > limit){
var tmp_str = $(this).text();
var dot_limit = MyWidth.width() - 60;
while(measureText(tmp_str, 12, 'Tahoma').width > dot_limit){
tmp_str = tmp_str.substring(0, tmp_str.length - 1);
}
tmp_str = tmp_str + '...';
//console.log(tmp_str) here im getting the correct string
$(this).attr('title', $(this).text());
$(this).text(tmp_str); // :(
//$("select").chosen().trigger("liszt:updated"); //not working
$('#tiptip_content').css('font-size', '13px');
$(this).tipTip({
maxWidth: "auto",
defaultPosition: "left",
fadeIn: 100,
fadeIn: 100,
attribute: "title"
});
}
$(this).trigger("change"); //not working
});
}
});
});
不是做所有这些工作,你认为这样使用CSS?所有你需要的是对每个项目,这些CSS规则: '溢出:隐藏;' '白色空间:NOWRAP;' '文本溢出:省略号;' –