我有contextMenu
的代码,在删除行时会为行的颜色设置动画,但当我将mouseout
和mouseover
部分添加到代码中时,已删除行的颜色不再更改:
$(function () {
$('.users').contextMenu({
selector: 'tr',
callback: function (key, options) {
if (key == 'delete') {
if (confirm(" Are you sure?")) {
$.post("../Actions/Delete.ashx", { type: "user", id: $(this).attr('id') });
$(this).animate({ backgroundColor: '#FF80FF' }, 1000);
}
}
},
items: {
"edit": { name: "edit" },
"delete": { name: "delete" }
}
});
//newly added part
$('tr').mouseover(function () {
$('td', this).animate
({ backgroundColor: "#80FF00" }, 300);
});
$('tr').mouseout(function () {
$('td', this).animate
({ backgroundColor: "white" }, 300);
});
//till here
});
删除确认后,我在consol中看到此错误:
[13:08:10.282]找不到元素@localhost:1299 / Actions / Delete.ashx:1
我哪里错了?
答案 0 :(得分:1)
尝试使用mouseenter
代替stop()
方法:
{为动画颜色,我认为你需要包含一个支持它的插件,如 jquery UI }
$('tr').mouseenter(function () {
$(this).find('td').stop().animate({
backgroundColor: "#80FF00"
}, 300);
}).mouseout(function () {
$(this).find('td').stop().animate({
backgroundColor: "#ffffff"
}, 300);
});