首页 文章

使用“基础”选项卡时禁用滚动到内容

提问于
浏览
0

我正在使用Foundation 5.5.3,我的内容选项卡存在严重问题 . 我已经尝试了我能想到的一切,但出于某种原因,只要用户点击选项卡,它就会将页面向下滚动到内容 . 我没有使用深层链接,因为我知道深层链接/滚动到内容存在一些问题 .

这是html的一个例子:

<ul class="tabs" data-tab data-options="scroll_to_content: false">
    <li class="tab-title active"><a href="#tab1">Tab 1</a></li>
    <li class="tab-title"><a href="#tab2">Tab 2</a></li>
</ul>
<div class="tabs-content">
    <div id="tab1" class="content active">
        <p>Tab 1 content</p>
    </div>
    <div id="tab2" class="content">
        <p>Tab 2 content</p>
    </div>
</div>

但是,单击选项卡时,它仍会滚动到内容 . 我很茫然,任何帮助都会非常感激 .

1 回答

  • 0

    this answer的帮助下整理解决方案 .

    问题似乎源于MixPanel处理跟踪链接的方式 . 它拦截点击操作,执行一些跟踪操作,然后手动将浏览器指向它应该去的位置 . 这通常很好,但是在单击内容选项卡时,Foundation会尝试禁用默认操作 . 然后MixPanel出现并忽略它,无论如何都将浏览器发送到链接,导致滚动问题 .

    禁用链接跟踪完全解决了这个问题,但这也意味着我们正在收集更少的有用数据 . 所以我四处寻找一种方法来禁用页面内链接的链接跟踪 . 这就是上面的答案派上用场的地方,因为它是一个简洁的小函数,允许使用jQuery选择器来确定要跟踪的链接 .

    我没有使用标准的链接跟踪设置,而是使用了提供的 delegate_links 方法,如下所示:

    mixpanel.delegate_links(document.body, 'a:not([href^=#])', 'Clicked Link');
    

    这会忽略以 # 开头的所有链接,因此它会禁用对页内链接的跟踪 . 正常链接按原样跟踪,但特定于选项卡的链接不再触发MixPanel,浏览器不再滚动到单击内容 .

相关问题