我刚刚开始使用JQuery,并遇到有关事件的问题。对Jquery事件的困惑?
下面是我的代码,它creaetes页面上的div元素,我想将事件处理程序附加到这个div如果单击或双击点击的反应。我想下面的代码会工作,但它似乎没有在所有的工作:
this.mainAppDiv = document.createElement("div");
this.mainAppDiv.id = "mainBody";
this.mainAppDiv.style.width = "99%";
this.mainAppDiv.style.height = this.mainCanvasDiv_H;
this.mainAppDiv.style.border = "thin red dashed";
document.body.appendChild(this.mainAppDiv);
$(this.mainAppDiv).click(function()
{
alert("The Clicked Divs ID: " + this.mainAppDiv.id);
});
当事件被触发是应该简单地警告被点击了什么DIV元素,但我得到的萤火以下错误:
this.mainAppDiv is undefined
line 43 - alert(“The Clicked Divs ID:”+ this.mainAppDiv.id);
任何人都可以看到为什么这不起作用?
吹毛求疵:'this'指事件处理程序被绑定到被点击....不一定元件(事件鼓泡)的元素。 – 2011-04-03 18:27:27
@Felix - 采取了一点,但从技术上讲,如果您单击另一个元素中包含的元素,那么您还要单击外部元素。我会澄清。 – tvanfosson 2011-04-03 18:30:40