jQuery .delegate()不处理load和changeData事件

jhl*_*oke 5 jquery

有人可以启发我的jQuery委托,处理什么事件和什么不处理.以下代码不起作用

$("#browser").delegate( ".photo", {
    "load": function(e) {
        alert("photo loaded");
    }
});
Run Code Online (Sandbox Code Playgroud)

但以下代码工作

$(".photo").load( function(e) {
    alert("photo loaded");
} );
Run Code Online (Sandbox Code Playgroud)

我还尝试将changeData事件委托给一个不起作用的类

$("#browser").delegate( ".thumbnail", {
    "changeData": function(e, prop, value) {
        alert( prop + " = " + value );
    }
});
Run Code Online (Sandbox Code Playgroud)

但以下代码工作

$(".thumbnail").bind( "changeData", function(e, prop, value) {
    alert( prop + " = " + value );
}
Run Code Online (Sandbox Code Playgroud)

Aid*_*api 11

不:

$("#browser").delegate( ".photo", {
    "load": function(e) {
        alert("photo loaded");
    }
});
Run Code Online (Sandbox Code Playgroud)

但:

$("#browser").delegate( ".photo", "load",
    function(e) {
        alert("photo loaded");
});
Run Code Online (Sandbox Code Playgroud)

并且您不能使用live和delegate来处理这些事件,因为它们不会冒泡.


SLa*_*aks 6

这些事件不起泡,因此它们不能与live或一起使用delegate.