每当我启动新的模态(SimpleModal)并使用(Tinyscrollbar)滚动浏览内容时,我都会遇到问题,因为滚动条似乎隐藏了内容的第一个项目符号(红色错误消息)。请查看下面的小提琴,单击以打开模式,然后抓住滚动条,将其向下移动,然后再向上移动以查看隐藏的项目符号。
我猜想这样做的唯一原因是由于模态弹出时高度会发生变化,这就是为什么我读取模态容器的高度并使用它来定义“视口”,然后我将tinyscrollbar_update()设置为no的原因有用。
我的JS:
$(document).ready(function(e) {
// Remove Order (from cart) Modal
$('.btn_remove_order').click(function() {
$(".modalMultiAlert").modal({
opacity: 60,
overlayCss: { height: "200px" },
minHeight: 200,
maxHeight: 800,
onShow: function() {
var heightscroll = $('.simplemodal-container').height();
$('.viewport').css('height', heightscroll);
var scrollbar = $('#scrollbar_container');
scrollbar.tinyscrollbar();
scrollbar.tinyscrollbar_update();
},
close: false
});
});
});
HTML和CSS可以在小提琴中看到:
http://jsfiddle.net/cd80cpan/6/
谢谢您的帮助!
最佳答案
找到了解决方案!我只是简单地制作了Tinyscrollbar容器的副本(.clone),然后在同一容器上执行了.replaceWith,然后从那里绑定Tinyscrollbar,请参见代码;
var $scrollbar = $('#scrollbar_container');
// Let's make a copy of the Scrollbar Container
var $modalCopy = $scrollbar.clone();
// Remove Order (from cart) Modal
$('.btn_remove_order').click(function() {
$(".modalMultiAlert").modal({
opacity: 60,
minHeight: 200,
maxHeight: 800,
onShow: function() {
// Replace the Scrollbar container after the Modal has loaded with Copy
$scrollbar.replaceWith($modalCopy);
// Determine height of the Modal
var $heightscroll = $('.simplemodal-container').height();
// Change the viewport height based on Modal height
$('.viewport').css('height', $heightscroll);
// Initialize Tinyscrollbar
$modalCopy.tinyscrollbar();
},
close: false
});
});
关于jquery - Tinyscrollbar隐藏在SimpleModal中的内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26393725/