You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改现有JS脚本实现table-responsive容器按星期数自动横向滚动

问题修复方案

原有代码存在以下三处核心错误:

  • 你声明的d是Date类型实例,无法直接和字符串格式的星期名称做相等判断,判断逻辑永远不会触发
  • 存在重复的判断分支,首个if和首个else if都匹配的是周二(martedì),属于冗余代码,且缺失周一的匹配逻辑
  • JS原生Date.getDay()方法返回的星期索引规则为:0对应周日,1对应周一,和你定义的星期数组索引0对应周一的规则不匹配,需要做偏移处理

修正后的完整代码

var d = new Date();
// 对齐自定义星期数组的索引规则:原生返回0对应周日,偏移处理后0对应周一,6对应周日
var weekIndex = d.getDay() - 1;
weekIndex = weekIndex < 0 ? 6 : weekIndex;

var weekday = new Array(7);
weekday[0] = "lunedì";
weekday[1] = "martedì";
weekday[2] = "mercoledì";
weekday[3] = "giovedì";
weekday[4] = "venerdì";
weekday[5] = "sabato";
weekday[6] = "domenica";

// 按索引顺序对应周一到周日的滚动偏移量,直接匹配无需多分支判断
var scrollOffset = [300, 300, 450, 600, 750, 900, 150][weekIndex];
$(".table-responsive").scrollLeft(scrollOffset);

逻辑说明

  • 先对原生星期索引做偏移处理,对齐你自定义的星期数组规则
  • 用数组索引直接匹配对应滚动距离,替代冗余的多分支判断,后续修改偏移值也更方便
  • 如果你不需要用到星期名称变量,也可以直接删除weekday相关的代码,只保留索引和滚动偏移的匹配逻辑即可

内容的提问来源于stack exchange,提问作者jacopo silvestri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 03:09:03