jQuery .scrollTop在模式框中不起作用

时间:2018-09-02 15:30:39

标签: jquery jquery-plugins

我使用Venobox模态窗口插件显示照片,评论和子评论。默认情况下,发布子注释的表单不可见。用户必须单击西班牙语的“ Responder”中的“ Reply”,然后显示该表格。

a href="#" class="comentario_a" id="0-51-3-1-0">Responder</a>

$(document.body).on("click",".comentario_a",function() { 
var ID = $(this).attr("id");
$("#commentbox"+ID).slideToggle('slow');
$("#ctextarea"+ID).focus();
return false;
});

问题在于,在很多情况下,用户必须向下滚动页面才能查看评论表单,因为该表单出现在底部页边距下方。我希望页面(模式框的内容)跳起来,以便用户无需滚动即可看到表单,但是.scrollTop在我的模式窗口中不起作用。

我尝试了一切:

$("html, body").scrollTop($("#commentbox"+ID).offset().top);
$("#commentbox"+ID).scrollTo(100);

等,但无法正常运行。我可以实现父页面跳到顶部,但不跳到模式窗口中的内容。

enter image description here

2 个答案:

答案 0 :(得分:0)

我的猜测是,您只想从html滚动条中减去100

尝试

$("html, body").scrollTop($("#commentbox"+ID).offset().top - 100);

答案 1 :(得分:0)

我有同样的问题。我通过将上下文从"html, body"更改为特定的模式选择器来解决了这一问题。 因此,假设您的模态具有id="modal",请使用以下方法:

$("#modal").scrollTop($("#commentbox"+ID).offset().top);