在为我的div执行Ajax之后无法调用鼠标相关事件

时间:2013-11-23 17:01:44

标签: javascript jquery html css

我尝试使用mouseenter或其他相关事件。但我的功能不会触发。首先,我有一个叫做文章的div,我用jquery来追加,设计它的内在。但jquery不会解雇任何东西。如果我将鼠标移过来。

然后我恢复到正常的鼠标悬停和使用javascript也无法工作。请向我解释为什么会发生这种情况以及如何解决这个问题。

我将永远清空我的文章并执行AJAX重新加载。像谷歌搜索框

<div id="article">  //Empty
</div>

var over = function (myObj) {
  alert("A");  //NOT FIRE
};

var out = function (myObj) {
};

$(".items").mouseenter(function() { alert("A"); //NOT Fire });


var myObject = JSON.parse(result, function (key, value) {

  if (key == "Name") name = value;
  if (key == "ProductId") id = value;
  if (key == "Url") {

    $("#article").append(
    "<div class='items left' onmouseover='over(this)' onmouseout='out(this)'>" +
     "<div class='clear' style='height: 2px;'></div>" +
   "</div>");
  }
}

//注意:再次深入搜索。我意识到它与使用jquery的live代理有关。但是,我仍然无法调用那些功能

1 个答案:

答案 0 :(得分:0)

尝试使用jquery .on()方法:

$(document).on('mouseenter','.items',function() { 
  alert("A"); 
});

.on()方法将事件处理程序附加到jQuery对象中当前选定的元素集。