2

John Resig (jQuery 氏) によって書かれたjQuery hotkeys pluginを使用しています。bindただし、 を使用しており、公式の jQuery APIに記載されているように にbind置き換えられました。on

標準コードは次のとおりです。

$(document).bind('keyup', 'alt+a', function(evt){...});

に変更しようとしbindましonたが、うまくいきませんでした。回避策はありますか、それとも問題ではありませんか?

また、ハンドラーをドキュメントに添付することが常に最善の方法であるかどうかも疑問に思っています。

4

2 に答える 2

4

on追加の DOM 引数http://api.jquery.com/on/を取るので、 と記述しnullます。

試す

$(document).on('keyup', null, 'alt+a', function(){}
于 2012-12-26T06:55:37.977 に答える
0

プラグインは、これらの行に見られるように、jQuery のメソッド.bindとメソッドの使用を再宣言します。.unbind

jQuery.fn.bind = function(){
jQuery.fn.unbind = function(){

私たちは簡単にできる

jQuery.fn.on = function(){
jQuery.fn.off = function(){

これも変更する必要があります -

jQuery.fn.__bind__ = jQuery.fn.bind;
jQuery.fn.__unbind__ = jQuery.fn.unbind;

jQuery.fn.__bind__ = jQuery.fn.on;
jQuery.fn.__unbind__ = jQuery.fn.off;

これは数回再利用されるため、bind 注意事項があれば置き換えてください。置き換えないでください__bind。単にbind出現箇所を on に、unbind出現箇所を off に置き換えてください。

または、jsFiddle でコードを使用するだけです

于 2012-12-26T06:58:43.363 に答える