unbind绑定到div坐标的事件

时间:2011-09-20 15:36:36

标签: jquery

我正在使用jquery将click和mousemove事件绑定到div的坐标:

$("#main").live("mousemove click", function(event) {
var x = event.pageX - this.offsetLeft;
var y = event.pageY - this.offsetTop;
  if ( event.type == "mousemove" ) {
        if ( (x >= 607 && x <= 720) && (y >= 345 && y <= 390) ) {

            //cursor:pointer
        }
   }  else //do something on click 

我想要做的是在ajax将新内容加载到我的主div后清除此绑定事件。

谢谢!

3 个答案:

答案 0 :(得分:1)

如果您需要取消绑定live()附带的方法,则必须使用die();

   $("#main").die()

取自文档

  

可以删除任何已附加.live()的处理程序   。死()。此方法类似于使用no调用.unbind()   arguments,用于删除附加.bind()的所有处理程序。   有关详细信息,请参阅.live()和.unbind()的讨论。

答案 1 :(得分:0)

来自jquery文档:

  

取消绑定所有的点击处理程序   绑定使用       .live(),使用.die()方法:

$(".clickme").die("click");

来源:

http://api.jquery.com/live/

答案 2 :(得分:0)

当实时元素附加到身体上时,您可以使用

$(document).unbind('mousemove click');

也解除他们的绑定