如何在jQuery中拆分多个事件句柄?

How to split multiple event handles in jQuery?

正在尝试找出如何将多个事件拆分成新的一行以使下面的代码更清晰。

$document.find('body').on(
    'click dblclick mousedown mousemove mouseout mouseover mouseup mousewheel keydown keypress keyup textInput touchcancel touchend touchmove touchstart blur change focus reset resize select scroll submit zoom',
    testConsole
);

function testConsole() {
    console.log(' test');
}

如何使这段代码更清晰?现在我有一行包含我要处理的所有事件,是否可以将其放入数组或其他内容以使其可读?

您可以使用 array 创建事件,然后使用 space 创建事件 join。检查下面的代码。

var events = ['click', 'dblclick', 'mousedown', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'mousewheel', 'keydown', 'keypress', 'keyup', 'textInput', 'touchcancel', 'touchend', 'touchmove', 'touchstart', 'blur', 'change', 'focus', 'reset', 'resize', 'select', 'scroll', 'submit', 'zoom'];

events = events.join(" ");

$(document).find('body').on(events,testConsole);

function testConsole() {
    console.log(' test');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<body>dsdsdsd</body>