每当div使用jQuery更改位置时,我该如何监听?

时间:2011-05-29 21:06:29

标签: javascript jquery css

我想做这样的事情:

$('#myDiv').positionChanged(function() {
    alert('Yay!');
});

有什么想法吗?这已经在jQuery中构建了吗?

2 个答案:

答案 0 :(得分:3)

我最终使用了这个:

function whereIChangePosition() {
    // Code to change position
    // ...

    $('#myDiv').trigger('positionChanged');
}

我的听众:

$('#myDiv').bind('positionChanged', function() {
    // Do stuff
});

答案 1 :(得分:1)

不幸的是,jquery中没有类似的东西。但对于下一个版本而言,这将是一个好主意。

到目前为止,您可以做的是自己添加一个回电:

假设你有一个改变div位置的函数。

function changePosition(elId,position) {
   $(elId).css('top',position);
   // or more complexe code
}

您可以为其添加回叫功能。

function changePosition(elId,position,callback) {
   $(elId).css('top',position);

   callback();
}

另一种方法是使用 DOMAttrModified 事件,但截至此日期它的浏览器支持率非常低