css - 使切换行为像输入控件,即响应空格键按下和键盘选项卡操作

标签 css html

我们有如下链接中的切换控件 https://www.w3schools.com/howto/howto_css_switch.asp 虽然它们在鼠标单击时接受输入,但它们不会在按下空格键时改变状态,并且在使用键盘选项卡时它们不会突出显示/选中。

如何使这些行为像任何常规输入控件一样?

我会在 html/css 中寻找可以轻松应用于任何此类控件的解决方案。

更新: 如答案中所述,复选框会在按下空格键时更改状态,而不是输入键。

最佳答案

我找到了答案。首先给元素添加一个tab索引,这样就可以聚焦了。然后您可以添加此 jQuery 代码。

$('.switch').on('keydown', function(e) {
    if(e.keyCode == 13) {
        if($(this).children("input").attr('checked')) {
            $(this).children("input").attr('checked', false);
        } else {
            $(this).children("input").attr('checked', true);
        }
    }
});

我编辑了代码 W3Schools 站点以添加此代码。您可以在https://www.w3schools.com/code/tryit.asp?filename=FHPJRINMFQOH查看.

祝你好运!!希望这有帮助!!

关于css - 使切换行为像输入控件,即响应空格键按下和键盘选项卡操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45192631/

相关文章:

html - 下拉列表显示在父 div 后面

php - 如何使用 PHP 将 HTML 表单数据传递给 MYSQL 数据库并将数据返回给浏览器

html - 单独的 HTML 文档

javascript - HTML:仍然无法从数据列表中选择数据属性吗?

javascript - Web 抓取 duckduckgo,但获取格式错误的链接

php - 调用css、js文件的最佳方式?

html - 在 AngularJS 中查找颜色相对于另一种颜色的百分比

javascript - 更改 Canvas 中 URL 图像的不透明度

php - 使整个网站的页眉、侧边栏和页脚保持不变

css - 如何使用 Gmedia 将 :left text, float 到 Afflux Gallary 旁边