Javascript-获取元素的事件并应用于键盘按钮
现在我想知道这是否可能: 我有一些元素有一些事件。现在让我们假设,在元素单击时,我显示Javascript-获取元素的事件并应用于键盘按钮,javascript,jquery,Javascript,Jquery,现在我想知道这是否可能: 我有一些元素有一些事件。现在让我们假设,在元素单击时,我显示警报('clicked) 问题是:有没有办法抓取该元素的事件并将其添加到beyboard的左箭头按钮 我要寻找的是:从一个元素抓取所有事件,并将此事件连接到另一个元素——在本例中是keyborad按钮,但这可能是另一个DOM元素 如果可能的话,感谢您的建议/策略/信息 编辑:我已经找到了这个代码段,但这不起作用,但解决了我试图解决的问题: function copyEvents(source, destinat
警报('clicked)
问题是:有没有办法抓取该元素的事件并将其添加到beyboard的左箭头按钮
我要寻找的是:从一个元素抓取所有事件,并将此事件连接到另一个元素——在本例中是keyborad按钮,但这可能是另一个DOM元素
如果可能的话,感谢您的建议/策略/信息
编辑:我已经找到了这个代码段,但这不起作用,但解决了我试图解决的问题:
function copyEvents(source, destination) {
// Get source events
var events = source.data('events');
// Iterate through all event types
$.each(events, function(eventType, eventArray) {
// Iterate through every bound handler
$.each(eventArray, function(index, event) {
// Take event namespaces into account
var eventToBind = event.namespace.length > 0
? (event.type + '.' + event.namespace)
: (event.type);
// Bind event
destination.bind(eventToBind, event.data, event.handler);
});
});
}
var oldE = $('.old');
var newE = $('.new');
copyEvents(oldE, newE);
我从jquery.js得到这个错误:
jquery.2.0.js:4未捕获类型错误:无法读取未定义的属性“length”内置于jquery的按键事件已处理此问题
var xTriggered = 0;
$( "#target" ).keypress(function( event ) {
if ( event.which == 13 ) {
event.preventDefault();
} else if(event.which == event.VK_LEFT){
event.preventDefault();
//runfunction();
}
xTriggered++;
var msg = "Handler for .keypress() called " + xTriggered + " time(s).";
$.print( msg, "html" );
$.print( event );
});
$( "#other" ).click(function() {
$( "#target" ).keypress();
});
然后,只需寻找你想要的钥匙
链接到关键事件代码:在我得到这些代码时,您必须找到与元素绑定的所有事件,并且可以通过我们将单击和其他事件附加到元素的简单方式来绑定它们。必须使用已与该元素绑定的处理程序。