我们当前的方案是在某个elses网站的iframe中显示的网页(由我们创建)。 iframe包含一个kendo面板栏,当您展开项目时,随着内容高度的增加,您可以在页面中进一步向下滚动。可以单击一个按钮打开引导模式,但如果向下滚动页面,则模式将显示在顶部,有时完全不在视图范围内。您可以看到它已打开,因为背景会像预期的那样略微变暗,但您必须向上滚动页面才能查看模态。它似乎只是ios上的一个问题,似乎确实发生在safari和chrome中。我们在ios 10.3.3上进行了测试。
以下是行动中的错误图片:
iframe如下:
<iframe src="..." width="100%" height="500" frameborder="0" marginheight="0" marginwidth="0">
我尝试手动将模式滚动到视图中,但它似乎在iframe中没有按预期工作。我用来尝试将模态滚动到视图中的函数如下:
(function ($) {
$.fn.scrollTo = function () {
$('html, body').animate({
scrollTop: $(this).offset().top + 'px'
}, 'normal');
return this; // for chaining...
}
})(jQuery);
这是由模态的“显示”事件触发的:
$("#contactUs_modal").on('shown.bs.modal', function (e) {
$("contactUs_modal").scrollTo();
$("#name").focus();
});
我也尝试过scrollIntoView,scrollTop等没有运气,而$(window).scrollTop(0);将背景滚动到顶部,而不是模态。
任何建议都会非常感激,我几乎没有想法。
答案 0 :(得分:0)
它看起来像是一个引导模态滚动问题,而不是iFrame问题。