jQuery $.proxy() 方法
-
定义和用法
$.proxy 方法接受一个已有的函数,并返回一个带特定上下文的新的函数。该方法通常用于向上下文指向不同对象的元素添加事件。提示:如果您绑定从 $.proxy 返回的函数,jQuery 仍然可以通过传递的原先的函数取消绑定正确的函数。 -
语法
$.proxy(function,context)$.proxy(context,name) -
参数
参数 描述 function 要被调用的已有的函数。 context 函数所在的对象的名称。 name 已有的函数,其上下文将被改变(应该是 context 对象的属性)。 -
示例
下例演示了强制执行 objPerson 内的 "test" 函数的上下文:
尝试一下<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>欢迎来到菜鸟教程</title> //此版本是百度cdn 1.11.1,当然你可以使用更高的版本,从2.0版本以上的是不支持ie6-8的 <script type="text/javascript" src="http://libs.baidu.com/jquery/1.11.1/jquery.min.js"></script> <script> $(document).ready(function () { var objPerson = { name: "John Doe", age: 32, test: function(){ $("p").after("姓名: " + this.name + "<br> 年龄: " + this.age); } }; $("button").click($.proxy(objPerson,"test")); }); </script> </head> <body> <button>执行 test 函数</button> </body> </html>
-