【问题标题】:Focus on table cell/column专注于表格单元格/列
【发布时间】:2015-08-03 03:46:23
【问题描述】:

我正在使用一个表格来显示一些文本(每个工作日显示几行信息的表格)。表格总是包含当天的信息,所以我想关注当天(列,或至少列的<th>)。

我需要什么来实现它? .focus 类仅保留用于输入字段,对吗?

(Ps:我正在使用引导程序,如果这可能有帮助,但我认为引导程序对此没有任何帮助)

编辑:如果有帮助,该网站是http://pedrorijo91.github.io/ist-canteen/

【问题讨论】:

  • 你能提供更多细节吗?一个 jsbin 或一些代码 sn-p 将有助于了解您到底想要实现什么。
  • @wrick17 这是网站pedrorijo91.github.io/ist-canteen 我的目标是在手机上打开网站时专注于当天,因为表格对于手机屏幕来说太大了
  • 所以如果你在手机上查看它,如果你去pedrorijo91.github.io/ist-canteen/#thursday,它就会集中在那里。如果你动态添加它,你会得到它。 :)

标签: javascript jquery html css html-table


【解决方案1】:

页面加载并生成数据后,只需将页面重定向到相应的 id。

例如,如果是星期四,从您的数据中获取它,然后执行以下操作:

window.location = '#thursday';

这将按照您的意愿集中在星期四。

我已经为它做了一个垃圾箱。 http://jsbin.com/timozi/1/edit?html,js,output

只需将输出窗口拖得较窄,以便只显示前 2 或 3 列并运行代码。应突出显示第七列。

【讨论】:

    【解决方案2】:

    如果您之前在 TD 元素上设置了 tabindex,则可以将焦点放在该元素上。

    var td = getElementById('someTD');
    td.setAttribute('tabindex', 10000);    // or other number
    td.focus();
    

    完美运行,它显示了正常的焦点行为,因此应用焦点 css 规则,例如:

    td:focus { background: #E0F8E0; border: 1px dashed red; }
    

    【讨论】:

    • 这是网站pedrorijo91.github.io/ist-canteen 我的目标是在移动设备上打开网站时关注当天,因为表格对于移动屏幕来说太大了。 In mobile 专注于 5 月 19 日与您的解决方案,不知道为什么
    • 也许你选择要聚焦的单元格的方式有误,反正它是聚焦一个,那不是第一个
    【解决方案3】:

    如果您的听力强度是突出显示或区分当前数据和以前的数据,只需添加额外的样式,如示例..添加类到标签 作为

    <tr class="current-day">
    <td>data1</td>
    <td>data2</td>
    <td>data3</td>
    <td>data4</td>
    </tr> 
    
     .current-day
     {
       background:#006621;
       color:#fff;
     } 
    
    .current-day td
    {
       background:#006621;
       color:#fff;
    }
    

    【讨论】:

    • 不,我的目标是将td 聚焦在移动屏幕上。检查我对@anr-upgraded-version 问题的评论
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-20
    相关资源
    最近更新 更多