我目前有这样的代码:
$(".jtable tbody td").not(".DeleteLicense").hover(
我该如何使用委托?类似这样的形式:
$("#resultContainer,#approvalContainer,#createNewContainer").delegate(".jtable tbody td....
谢谢!
我目前有这样的代码:
$(".jtable tbody td").not(".DeleteLicense").hover(
$("#resultContainer,#approvalContainer,#createNewContainer").delegate(".jtable tbody td....
谢谢!
:not()
选择器 将否定条件纳入到您的选择器中。$("#resultContainer,#approvalContainer,#createNewContainer")
.delegate(".jtable tbody td:not(.DeleteLicense)", "...", ...);
.not()
函数而不是:not()
选择器,但我不确定在这种情况下是否可行。delegate
时,您可以使用.jtable tbody td
选择器,并在您的事件处理程序中使用if(!$(this).is(".DeleteLicense")) { ... }
来仅处理符合您条件的元素。像这样:
$("#resultContainer,#approvalContainer,#createNewContainer").delegate(".jtable tbody td:not('.DeleteLicense')", "hover", function(eventObj) {
// handler code
});
我的第一个想法是尝试使用 :not()
选择器:
$("#resultContainer,#approvalContainer,#createNewContainer").delegate(".jtable tbody td:not('.DeleteLicense')", "hover", function(){ /* do stuff */});
:not()
选择器可以使代码更清晰、更易于理解。但是我不知道这两种方法的性能影响如何。在事件处理程序中使用.is
会使事情变得更加复杂,因为你的选择器说一件事,但你的代码却做另一件事。 - Zack The Human