触发点击后滚动不起作用

时间:2017-03-02 07:45:51

标签: jquery prototypejs

我在函数中使用$$('.em-details-tabs')[0].scrollTo();,然后使用$$('DIVELEMENT')[0].click();触发点击。 click函数成功执行但滚动到特定元素失败。这是我的代码片段:

$$('a[href="#' + tab_id + '"]')[0].triggerEvent('click');
$$('.em-details-tabs')[0].scrollTo();

1 个答案:

答案 0 :(得分:0)

scrollTo()元素仅在window对象上可用,并且它还接受两个参数; xy个职位。

要解决此问题,您可以在scrollTop()上使用jQuery的window方法,并为其提供所需元素的y位置。试试这个:

$$('a[href="#' + tab_id + '"]')[0].triggerEvent('click');
$$(window).scrollTop($$('.em-details-tabs').offset().top);

Working Example

或者,您可以修改此逻辑以使滚动设置为动画,以便为您的用户带来明显的效果:

$$('html, body').animate({
    scrollTop: $$('.em-details-tabs').offset().top
}, 500);

Working Example