显示隐藏的div并滚动到它

时间:2014-12-11 16:51:59

标签: jquery scroll

我正在开发一个单页应用程序,因为我有三个div,我需要分别显示hide。在中间div我有标签,我执行滑动。

我使用Hammer.js进行滑动,使用jquery-scrollto.js进行滚动

HTML

<div id="revolutionary">revolutionary</div>
<div id="middle">middle</div>
<div id="agendaa">agendaa</div>

JS

$(document).ready(function(){
var revolution = document.getElementById('revolution');
var rev = new Hammer(revolution);

rev.on("swiperight", function(event) {
    alert('swiped');
    $('#agendaa').css('display', 'block').ScrollTo();
});

//Agenda
var agenda = document.getElementById('agenda');
var agen = new Hammer(agenda);

agen.on("swipeleft", function(event) {
    //alert('swiped');
    $('#revolutionary').css('display', 'block').ScrollTo();

});
});

这时当我在swiperight中显示底部的div时,然后滚动到该div。 当我向上滑动时,顶部的div应首先显示,滚动到该div。

这里发生的事情是滚动动画适用于底部div但不适用于顶级div。

编辑:滚动到底部div也不起作用,显示div后滚动动作正常(第二次滑动)

1 个答案:

答案 0 :(得分:0)

试试这个

$('#revolutionary').show( 'fast', function() { this.ScrollTo(); } );

我认为发生的事情是,在事件处理程序返回之前,元素实际上并未显示。