jQuery delegate() 方法
示例
当点击 <div>
元素内的 <p>
元素时,更改所有 <p>
元素的背景颜色
$("div").delegate("p", "click", function(){
$("p").css("background-color", "pink");
});
自己动手试一试 »
定义和用法
delegate() 方法在 3.0 版本中已弃用。请改用 on() 方法。
delegate() 方法为选定元素的指定子元素附加一个或多个事件处理器,并指定一个在事件发生时运行的函数。
使用 delegate() 方法附加的事件处理器将同时适用于当前和未来的元素(例如,通过脚本创建的新元素)。
语法
$(selector).delegate(childSelector,event,data,function)
参数 | 描述 |
---|---|
childSelector | 必需。指定要附加事件处理器的零个或多个子元素 |
事件 | 必需。指定要附加到元素的事件或多个事件。 多个事件值用空格分隔。必须是有效的事件 |
data | 可选。指定要传递给函数的附加数据 |
function | 必需。指定事件发生时要运行的函数 |
亲手尝试 - 示例
为未来的元素添加事件处理程序
如何使用 delegate() 方法为尚未创建的元素添加事件处理器。
将数据传递给函数
如何将数据传递给自定义命名的事件处理器。