javascript - 如何显示两个水平滚动菜单栏

标签 javascript jquery html

我需要为我的网站显示两个水平滚动菜单栏。所以我搜索并找到了带有左右箭头的自定义水平滚动菜单。

https://jsfiddle.net/c5grnve6/

当页面中只有一个滚动菜单时,它可以正常工作。如果我使用两个菜单,就会出现问题。

01) 当单击向右或向左箭头时,两个菜单箭头都会移动。

02) 右箭头到达终点时不会隐藏。

所以我尝试复制这段代码并使用不同的类名,但没有成功。

if (menuPosition <= paddleMargin) {
    $(leftPaddle).addClass('hidden');
    $(rightPaddle).removeClass('hidden');
} else if (menuPosition < menuEndOffset) {
    // show both paddles in the middle
    $(leftPaddle).removeClass('hidden');
    $(rightPaddle).removeClass('hidden');
} else if (menuPosition >= menuEndOffset) {
    $(leftPaddle).removeClass('hidden');
    $(rightPaddle).addClass('hidden');

}

我怎样才能实现这个目标?

最佳答案

01) 当单击向右或向左箭头时,两个菜单箭头都会移动。它发生是因为你写了:

// scroll to left
$(rightPaddle).on('click', function() {
    $('.menu').animate( { scrollLeft: menuInvisibleSize}, scrollDuration);
});

// scroll to right
$(leftPaddle).on('click', function() {
    $('.menu').animate( { scrollLeft: '0' }, scrollDuration);
});

这里 rightPaddleleftPaddle 抓取了 rightPaddleleftPaddle ,然后通过 '.menu' 两个菜单都在移动。您需要给它们单独的 id,以便可以单独调用它们。

关于javascript - 如何显示两个水平滚动菜单栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54122118/

相关文章:

javascript - 在单个内部属性上查找匹配的数组内容和长度

jquery - 如何使用 HTML5 ondrag 事件改变元素的位置?

javascript - JSON ajax 返回未定义

html - document.children VS document.childNodes

html - 像 XDT 转换一样转换 HTML

javascript - 在 javascript/node.js 中连接到 Gmail IMAP API

javascript - 使用 Node.js 从其他文件调用方法

javascript - 同步多个带有惯性效果的滚动div

javascript - React Router 1.0.0-rc1 的基本实现显示错误

javascript - 如何循环遍历 DataTables jQuery 中的所有行?