jquery - Readmore.js 在 Bootstrap 3 Modal 中不起作用

标签 jquery css twitter-bootstrap-3

我正在使用 Readmore.js 在我的页面中隐藏额外的内容。这在任何地方都可以正常工作,除了在 Bootstrap Modal 中不工作。

这是我的例子 FIDDLE

您会看到一些文本带有“显示更多”链接。当我点击显示更多时,它会显示更多隐藏的文本。 但是我在 Modal 中做了同样的事情(单击 Modal Button),但它在那里不起作用。我希望我正确地添加了所有内容,但我不明白为什么它不进入模态。我如何让它在模态中工作。

我也非常需要这个 readmore.js 来使用。所以任何帮助都会救我。

JS

$('.show-more').readmore({
        maxHeight: 112,
        speed: 300,
        moreLink: '<a href="#" class="btn btn-link" style="display: block; width: auto; padding: 0px;text-align: left; margin-top: 10px;">Show more</a>',
        lessLink: '<a href="#" class="btn btn-link" style="display: block; width: auto; padding: 0px;text-align: left; margin-top: 10px;">Show Less</a>'
    });

最佳答案

您可以使用 showshown bootstrap3 事件,例如:

var opts = {
    maxHeight: 112,
    speed: 300,
    moreLink: '<a href="#" class="btn btn-link" style="display: block; width: auto; padding: 0px;text-align: left; margin-top: 10px;">Show more</a>',
    lessLink: '<a href="#" class="btn btn-link" style="display: block; width: auto; padding: 0px;text-align: left; margin-top: 10px;">Show Less</a>'
};

$('.show-more').readmore(opts);

$('.modal').one('show.bs.modal', function () {
    //for styling purpose only
    $(this).find('.show-more').css({overflow: "hidden", maxHeight: opts.maxHeight});
}).one('shown.bs.modal', function () {
    //initialize plugin once modal shown
    $(this).find('.show-more').readmore(opts);
});

第一次打开模态框后需要初始化插件。

-DEMO jsFiddle-

关于jquery - Readmore.js 在 Bootstrap 3 Modal 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26656599/

相关文章:

html - Bootstrap - 为什么最小媒体查询 768px?

php - 如何处理 javascript 字符串中的 UTF-8

jquery - 如何避免两个版本的Jquery库之间的冲突?

css - 状态变化的不同转换延迟

html - 如何让一个div覆盖整个屏幕

css - Twitter Bootstrap 3 中的圆 table

javascript - 单击按钮将元素移动到另一个元素之上

javascript - 带有 classyloader 的猫头鹰旋转木马圆形进度条给出 getContext 错误

php - 在 n 号之后更改样式。结果- PHP

html - 两个宽度为 50% 的 div,内容在容器内