Como remover vários delegates de evento usando o método único undelegate no jquery

Posso tornar o seguinte muito mais simples (em vez de usar ‘undelegate’ duas vezes)?

$("#div1").undelegate("div", "mouseenter").undelegate("div", "mouseleave"); 

Eu não quero manipuladores de events diferente de mouseenter e mouseleave para ser perturbado.

Divida seus events com espaços.

 $("#div1").undelegate("div", "mouseenter mouseleave"); 

Você deve usar on e off embora.

 $("#div1").off("mouseenter mouseleave", "div"); 

http://api.jquery.com/undelegate/

O método .undelegate () é uma maneira de remover manipuladores de events que foram ligados usando .delegate (). A partir do jQuery 1.7, os methods .on () e .off () são preferidos para append e remover manipuladores de events.

Nesse caso específico, você pode usar a abreviação .hover() para mouseenter e mouseleave .

 ​$("#div1").off("hover", "div"); 

.off() é a maneira recomendada para remover manipuladores de events do jQuery 1.7.