【问题标题】:How to assign 'return' as shortcut for anchor如何将“返回”指定为锚点的快捷方式
【发布时间】:2011-01-27 10:51:06
【问题描述】:

是否可以将返回键指定为锚点的快捷方式。就像在某个输入字段处于焦点时提交表单时一样。 我看过一些 jQuery 热键,但由于我缺乏一些 js 技能,所以我不太明白。

我的计划是,当页面加载时,用户只需按 Enter。然后将执行一个操作,然后执行重定向。我正在尝试这样做

这样做的原因是我相信用户在实际操作发生之前按下回车键比移动光标并单击链接要快得多。

【问题讨论】:

    标签: javascript html keyboard-shortcuts anchor


    【解决方案1】:

    自动聚焦链接会更简单:

    window.onload = function() {
        document.getElementById("changeStatusLink").focus();
    }
    

    不需要 jQuery,因为它是有焦点的,所以按下 Enter 会触发点击事件。

    【讨论】:

    • @Pet 是的,据我所知所有浏览器,因为它几乎是“核心”JavaScript。一个值得注意的缺点是它不会像 jQuery 那样“支持”多个 onload 事件。
    • 因为到目前为止,该特定页面只需要一个 onload 函数,因此我将使用它。这似乎是迄今为止最简单的解决方案。非常感谢您的帮助。
    【解决方案2】:

    如果它是一个表单(例如,带有 id #myform),为什么不尝试使用此代码捕获用户提交。您需要在表单中放置一个隐藏的表单提交元素。

    HTML

    <form id="myform">
      <input type="text" name="email" />
      <input type="submit" style="display: hidden;" />
      <a href="" id="myform">Click here to do some action</a>
    </form>
    

    Javascript

    $(function(){
        $('#myform').submit(function(){
            $(this); // this refers to the form
            $('#your-link-id').click();
            return false;
        });
    });
    

    Bind an event handler to the "submit" JavaScript event, or trigger that event on an element.

    注意:代码未经测试,但应该可以工作。

    【讨论】:

    • 但是由于我没有使用表单,我想我会使用影子向导的方法:) 但是非常感谢。反正我以后可能需要这个:P
    • @nickifrandsen 您可以添加一个表单 :D,它不会影响外观。
    猜你喜欢
    • 2012-10-05
    • 1970-01-01
    • 2019-04-29
    • 2016-03-24
    • 2014-05-18
    • 2021-04-19
    • 1970-01-01
    • 2019-02-24
    • 1970-01-01
    相关资源
    最近更新 更多