JQuery scrollto阻止我的输入字段

时间:2013-08-02 10:29:09

标签: jquery blocking scrollto scrolltop

我创建了一个CMS页面,我可以在其中添加文本到我的网站。 在页面上,我有多个提交表单。 为了避免滚动,我创建了一个带有jquery scrollto动作的菜单,以跳转到正确的提交表单。

$(document).on('click', '#scrollto_blogpost', function(event) {
    $('html,body').animate({
        scrollTop: $('#blogtitle').offset().top -100
    }, 'slow');
});

它直接跳转到输入字段#blogtitle(这是表单的上部输入字段),我将其偏移以在浏览器边缘和输入字段之间留出一些间距。

如果单击菜单项,它会跳转到表单,但我无法单击输入字段,也会忽略单击提交按钮。 textarea框对点击做出反应,但仅在第二行的某处。

目前的解决方法是: - 跳转到表格。 - 用鼠标手动上下滚动 - 并且所有输入字段都会对鼠标点击做出反应。

我想这与偏移量有关,但我找不到合适的解决方案。

1 个答案:

答案 0 :(得分:0)

//这是静态的

 $('#scrollto_blogpost').click(function() {
            $.scrollTo( '#blogtitle', 800, {easing:'swing'} );
            $('#blogtitle').effect('highlight', {}, 3000);
        });

//为不同的链接和div使用Dynamic使其像这样

<a href="#divid" class="link">click me</a>
<div id="divid">Your DIv</div>
$('.link').click(function(event) {
            event.preventDefault();
            var id =$(this).attr('href') //make sure your href="#divid"
            $.scrollTo( id, 800, {easing:'swing'} );
            $(id).effect('highlight', {}, 3000);
        });