我正在尝试获取一个文本块以垂直调整大小,并使用dotdotdot jQuery省略号支持插件。 dotdotdot插件具有一个设置高度参数,我想知道是否有一种方法可以动态更新该设置高度。我想考虑相邻div的总高度,并调整文本块的大小以适合特定div的整个高度。
我将此jsFiddle作为我想要完成的工作的宽松模型:http://jsfiddle.net/smittles/8psvZ/
理想情况下,大纲文本将随着红线向下移动而扩展以下降到红线。
由于我使用的是设定高度,因此该模型目前无法正常工作。我不知道要进行什么调整才能使其正常工作。
如果可能,我确实希望保持使用dotdotdot.js。
最佳答案
使用toggle
函数的回调来调用点代码。
请参见this updated fiddle或下面的代码段:
$('.share').click(function(){
$('.social_options').toggle('fast', function(){
// height will be height of image frame + share button
var new_height = $('.image_frame').height() + $('.share').height();
// if the social options are visible, add that to height as well
if ($('.social_options').is(':visible'))
new_height += $('.social_options').height();
$('.synopsis').dotdotdot({
ellipsis : '... ',
wrap : 'word',
after : null,
watch : true,
height : new_height
});
});
});
您也可以通过创建执行点点分隔的函数来防止冗余代码。在页面加载时调用它,然后在随后的每个拨动调用中也调用它。