按下向下键时可以触发另一个键吗?

时间:2015-10-29 13:51:20

标签: javascript jquery triggers

当我按向下键时,我想触发 Tab键

所以当我按下向下箭头键时 如果使用Tab键,它应该具有相同的效果。

有没有人知道我的问题jquery或javascript代码? :)

2 个答案:

答案 0 :(得分:3)

不,出于好的原因,您无法根据按键触发不同的按键。否则,您可以欺骗浏览器自动填写密码或其他敏感信息,甚至使密码管理器进行全局自动填充。

也就是说,如果您想要做的就是让下键从一个表单字段跳转到下一个表单字段,就像Tab键一样,这很容易。只是拦截有问题的按键并检查它是否是向下键(charCode 40)。如果是,请执行您想要用来处理事件的任何代码。

答案 1 :(得分:2)

嗨,这可能会解决您的问题

箭头键仅由onkeydown触发,而不是onkeypress Down的键码是40

class MessagesController < ApplicationController


 before_action :authenticate_user!

  def new
    @chosen_recipient = User.find_by(id: params[:to].to_i) if params[:to]
  end

  def create
    recipients = User.where(id: params['recipients'])
    conversation = current_user.send_message(recipients, params[:message][:body], params[:message][:subject]).conversation
    flash[:success] = "Message has been sent!"
    redirect_to conversation_path(conversation)
  end
end

或者使用jQuery,您可以执行此操作当您按下向下箭头键(keyCode 40)时,下一个输入将获得焦点。

function convertDownToTab() {
  if(event.keyCode==40) {
    event.keyCode = 9;
  }
}
document.onkeydown = convertDownToTab;

希望这有帮助