我有一个指令,要在表格列上放置一个排序图标(fa-caret-up,fa-caret-down)当我在列标题上鼠标输入时,它应该显示现有的默认方向desc的相反方向。 我能够获得事件click,mouseenter和mouseleave。 现在的问题是,当您查看要单击的列时,触发是不合适的,它正在删除排序图标。 有没有办法结合click和mouseenter事件来触发下一次点击和鼠标中心事件? 这是我的代码。我需要实现类似ele.bind("点击鼠标中心")或点击事件点击然后实现mouseeneter:
var upSortClass = "fa fa-caret-up";
var downSortClass = "fa fa-caret-down";
var iconClass = ".icon-sort";
var addIconClass ="";
var removeIconClass ="";
ele.bind('click', function () {
var ic = ele.find(iconClass);
ic.addClass(addIconClass);
addIconClass ="";
});
ele.bind('mouseenter', function () {
var ic = ele.find(iconClass);
var sortUp = ic.hasClass(upSortClass);
var sortDown = ic.hasClass(downSortClass);
if(sortUp) {
addIconClass = upSortClass;
removeIconClass = downSortClass;
ic.removeClass(upSortClass);
ic.addClass(downSortClass);
}
if(sortDown) {
addIconClass = downSortClass;
removeIconClass = upSortClass;
ic.removeClass(downSortClass);
ic.addClass(upSortClass);
}
if(!sortUp && !sortDown) {
removeIconClass = downSortClass;
ic.addClass(downSortClass);
}
});
ele.bind('mouseleave', function () {
var ic = ele.find(iconClass);
ic.removeClass(removeIconClass);
ic.addClass(addIconClass);
addIconClass ="";
removeIconClass ="";
});
请指导。 提前谢谢。