如何在JavaScript中结合按键和点击function?
我有以下两个function:
$("input").keypress(function(event) { if (event.which == 13) { //code } }); $('#login_submit').click(function () { //code });
在函数中使用的代码完全是相同的代码,基本上是代码发布。 所以我想知道是否有办法将这些函数与OR语句结合起来?
创建自己的回调并将其传递给事件处理程序。
var callback = function() {...}; $("input").keypress(function() { if (event.which == 13) callback(); }); $('#login_submit').click(callback);
在HTML中添加一个类
现在你可以写:
$(".myClass").bind("keypress click", function(){});
或者这样做:
$("input").add("#login_submit").bind("keypress click", function(){});
请注意,单击输入也会触发此操作。
你为什么不这样做?
$("input").keypress(function(event) { if (event.which == 13) { foospace.yourfunction(); } }); $('#login_submit').click(function () { foospace.yourfunction(); }); var foospace={}; foospace.yourfunction=function() { alert("your code goes here!"); }
编辑:
@David的回调解决方案稍微优雅一些。
我会链接事件,如:
var watchCurrentCursorPosition = function (){ console.log("foo"); } $("input").keypress( watchCurrentCursorPosition ).click( watchCurrentCursorPosition );