0

我想检测用户何时按下了 contenteditable div 中的键。但是,div 是动态加载的,我只想抓住第一次按键。

我想要与jquery 相同的结果只捕获第一个按键吗?但对于动态内容。

到目前为止我的代码:

$(document).on('keypress',"#divid",function(){});
4

1 回答 1

3

如果你只想抓住第一个按键,你可以使用one它(是的,真的one - 这是一个可怕的双关语):

$(document).one('keypress',"#divid",function() { });

或者在触发时显式删除处理程序(可能在检查某些条件之后):

$(document).on('keypress',"#divid",handler);

function handler() {
    $(document).off('keypress',"#divid");
}

(是的,上帝保佑我们,这个函数真的被调用了off。)

于 2013-01-21T16:33:30.837 回答