如何让Tiny Slider的前后切换按钮始终保持可见?
解决Tiny Slider切换按钮始终可见的问题
要让Tiny Slider的prev/next按钮在所有项目已完全显示时仍保持可见,可采用以下两种方案:
方案1:CSS强制覆盖禁用状态样式
Tiny Slider会在按钮无滑动空间时为其添加tns-is-disabled类,并默认设置display: none隐藏按钮。只需通过CSS覆盖该样式,就能让按钮始终显示:
/* 针对默认控制容器的样式 */ .tns-controls [data-controls="prev"], .tns-controls [data-controls="next"] { display: block !important; } /* 可选:给禁用状态的按钮添加视觉提示 */ .tns-controls .tns-is-disabled { opacity: 0.5; cursor: not-allowed; }
如果你使用了自定义控制容器(如代码中的#news-controls),需调整选择器匹配你的按钮:
#news-controls [data-controls="prev"], #news-controls [data-controls="next"] { display: block !important; } #news-controls .tns-is-disabled { opacity: 0.5; cursor: not-allowed; }
方案2:结合配置优化(可选)
若希望按钮不仅可见,还能在无滑动空间时保留交互逻辑,可调整loop配置为true(开启循环滚动),但这会改变滑块的行为逻辑。如果不需要循环,方案1的CSS覆盖是更直接的选择。
你的原有滑块配置无需大幅修改,只需保留并搭配上述CSS即可实现需求:
var slider_news = tns({ container: '#news', mode: 'carousel', items: 1, responsive: { 1450: { items: 3, gutter: 25 }, 992: { items: 2 }, }, mouseDrag: true, slideBy: 1, gutter: 20, loop: false, autoplayButtonOutput: false, nav: false, arrowKeys: true, speed: 500, controlsContainer: "#news-controls", });
内容的提问来源于stack exchange,提问作者Philipp M
相关产品推荐
相关产品推荐

