触发点击后滚动不起作用

Scroll not working after trigger click

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

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

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

要解决此问题,您可以在 window 上使用 jQuery 的 scrollTop() 方法,并为其提供所需元素的 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