在$ .event中存储任意数据

时间:2015-03-09 20:09:50

标签: javascript jquery

请仔细查看以下代码:

var e = jQuery.Event( "keydown", { keyCode: 64 } );

第二个参数中的事件附加了数据。现在我看起来有很多插件中的那种语法,并且想知道,是否使用将任意数据附加到$ .event / custom事件? 。

我见过Jquery doc's

event object

还有trigger

我想知道,如果将数据附加到事件的唯一用法如下:

                   var e = jQuery.Event( "keydown", { keyCode: 64 } );
                   // above is the line i am having difficulty understanding
                   // the usage of arbitary data with the $.event is quite 
                   //elusive to a novice developer like me                 
                    $(window).on('keydown' , function(e){
                            console.log('key 64 pressed');
                        });

                    press =  function(){
                        $(window).trigger(e);
                    }

                    setTimeout(function(){
                        press();
                    }, 2000);

即。触发特定键或特定元素上的事件,我的意思是这是将任意数据附加到$ .event的唯一用途吗?

我很感激我对这个困难的一些解释。

谢谢。

亚历山大。

1 个答案:

答案 0 :(得分:1)

有时您使用的代码在某种程度上取决于交互。

在你的例子中,你是"手动"触发该输入上的keydown事件,以便触发"触发" event-listeners听这个事件。

可能在这个例子中你有一个空闲的注销系统,你激活了一些东西,只要你需要,就可以在UI上保持会话活着。

前几天我不得不使用类似的东西,以便在搜索后关闭选择下拉的第三方插件中打开下拉列表。