【问题标题】:Jquery .scrollTop does not work in a modal boxJquery .scrollTop 在模态框中不起作用
【发布时间】:2018-09-02 15:30:39
【问题描述】:

我使用Venobox modal 窗口插件来显示照片、cmets 和subcmets。默认情况下,发布 subcmets 的表单是不可见的。用户必须点击“回复”,西班牙语为“回复者”,然后出现表单。

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);

等,等等,但不能让它工作。我可以实现父页面跳转到顶部而不是模态窗口中的内容。

【问题讨论】:

    标签: jquery jquery-plugins


    【解决方案1】:

    我猜你只是想从 html 滚动条中减去 100

    试试

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

    【讨论】:

    • 当我使用它时,父页面会滚动到顶部,但不会滚动到模态框内的内容。
    • 建议您提供重现问题的演示
    【解决方案2】:

    我遇到了同样的问题。我通过将上下文从 "html, body" 更改为特定的模式选择器来解决这个问题。 所以,假设你的模态有id="modal",使用这个:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-23
      • 1970-01-01
      • 1970-01-01
      • 2021-12-27
      相关资源
      最近更新 更多