delegate

阅读 / 问答 / 标签

nic.ru上面购买域名为什么一直显示Not delegated

注册国别域名,就需要注意了,如果不清楚当地国家的域名注册规范,可能很容易让域名被删除俄罗斯域名注册,是有规范,需要审查DNS和注册人资料,通过后就可以做正常解析如果英文不好,建议注册域名去阿里、腾讯;国别域名去 febhost

delegated power是什么意思

delegated powerun.〔政〕授予权利授权;委任权;被授予的权利例句1.Rules made beyond the powers given are void because they are not made under the direct or delegated power of Parliament.超越授权制定的规则是无效的,因为它们既不是由议会直接制定,也不是通过委托权力制定的。2.The legislative power, being but a delegated power from the people, cannot be transferred to any other hands.立法权--即只是源于人民的一种委托权--不能转到任何他人之手。3.Mrs White delegated her power of attorney to her nephew.怀特夫人授权她的侄子作为她的代理人。4.For non-contested applications, the Board has delegated its power of approval to the Secretary.至于没有争议的酒牌申请,酒牌局已将批准权力转授予酒牌局秘书。5.Then, the person or body who was delegated the power, produces the detailed provisions to achieve those general aims.然后,被授权的个人或团体,再制定详细的规定来达成法案的意图。

delegated authority是什么意思

delegated authority[法] 代理权限; 例句:1.Article 124 the insurer shall be held liable for the acts of its insurance agentswhen they transact insurance business on behalf of the insurance companyin accordance with their delegated authority. 第一百二十四条保险代理人根据保险人的授权代为办理保险业务的行为,由保险人承担责任.2.Rules governing the qualifications of the institutions withtelecommunications expertise as stipulated in the above paragraph, thedelegated authority, cancellation or termination of the engagement, andsupervision related to the engagement shall be made by the dgt. 前项电信专业机构应具备之资格条件、受委托之权限、解除或终止委托及其相关委托监督事项之办法,由电信总局定之。

delegated是什么意思

delegated授与的; 例句:1.The actual layout of memory depends on the garbage collector that is currently activeand, to be compatible with all of them, the relocation should probably be delegated tothe active garbage collector. 内存的实际布局取决于当前活动的垃圾收集器,而且,为了能与所有这些对象兼容,重分配应该有可能会被委派给活动的垃圾收集器。2.Note, elasticsearch is a peer to peer based system, nodes communicate with oneanother directly if operations are delegated/ broadcast. 注意,elasticsearch是一个基于端到端的系统,如果是授权或广播的方式,那么节点之间是直接通讯的。

this time tomorrow you------- there negotiating with the delegates

now you"re sitting here negotiating with the delegates|||this time tomorrow he will be sitting here negotiating with the delegates

C++ 在编译中出现错误constructor delegates to itself 代码如下

错的这么明显,显然是对什么是复制构造函数没理解。复制构造函数的职责是复制别的构造自己,复制的是别的对象的成员,而不是整个复制。整个复制那不就等于调用自己了嘛?连自己都没定义完成就开始调用自己了。复制构造函数定义的正确写法:person(const person& p):m_name(p.m_name){}

delegate的形容词形式 delegative好像不是. delegated呢?

形容词 delegates,从名词转换成形容词 举例:XXXX sent a delegates party to participate in a peace talk.多delegate人数的队伍. 有时候,用delegate party也行. 形容词 delegating,从动词转换成形容词 举例:The command post assigns a delegating party to assume the role of dealing with strangers crossing the border. - 附有代表作用的团队 形容词 delegated,以过去动词充当形容词 举例:The manager is executing his delegated actions posted to him. - 受委任的行动

day delegate rate是什么意思

day delegate rate日代表率词典结果:delegate[英][u02c8delu026agu0259t][美][u02c8du025blu026au02ccɡet]n.代表,代表团成员; vt.委派代表; 授权给; [法律]债务转移; 第三人称单数:delegates过去分词:delegated复数:delegates现在进行时:delegating过去式:delegated易混淆单词:Delegate以上结果来自金山词霸例句:1.Obama added to his lead in the delegate count and total popular voteon tuesday. 星期二,奥巴马不仅在代表票数目,而且在普选票中继续保持领先地位。

representation representive delegate三个作为名词 做代表的时候。有什么区别呢

representativerepresentation ,做代表 时,多指抽象的事物.representative (非representive),多指具体的或物She is the club"s representative at the convention. 她是该俱乐部派来参加会议的代表。delegate ,多指官方代表团的团员

结构型模式-安卓源码实战之的Proxy(代理)、Delegate(委托)

Proxy和Delegate的设计思想是相同的,可以一起讨论。前面是代理模式的简要介绍,后面是具体源码实战。 以下基础知识摘抄自《设计模式-可复用面向对象软件的基础》Proxy章节 为其他对象提供一种代理以控制对这个对象的访问 当创建某一具体对象RealSubject开销很大时,应该根据需要进行创建,当真正需要到这个RealSubject对象时在进行创建,此时就需要用到代理Proxy 。 例如需要在文档中嵌入 图形对象的文档编辑器功能 ,然而 创建图形文档编辑器的开销很大也不是每一个文档都需要用到图形文档编辑器 。所以我们使用另外一个对象(即图像Proxy) 代替 真正的图形文档编辑器。 Proxy可以代替一个图形文档编辑器,并且在真正需要的时候负责实例化这个图形文档编辑器对象。 只有当文档编辑器点击 图形文档编辑器 代理Proxy的图标以启动功能时,图形代理Proxy才创建真正的 图形文档编辑器 对象 上面说过,代理(委托)模式是为了避免直接创建开销大的资源而不使用,采用的一种代理模式以便于真正使用时在实例化。 在 PhoneWindowManager 中使用 KeyguardServiceDelegate 来代理 KeyguardService 的功能( KeyguardService 由 KeyguardServiceWrapper 包装器进行包装) PhoneWindowManager 需要使用到 KeyguardService 的功能,但是在创建 PhoneWindowManager 时就实例化 KeyguardService 没必要且开销大,因为还没用到 KeyguardService 的功能。直接创建 KeyguardService 会浪费 binder线程池 资源,所以应该在需要使用的时候再创建,所以引入 KeyguardServiceDelegate 。 PhoneWindowManager 并没有直接创建 KeyguardService 对象,而是创建了代理对象 KeyguardServiceDelegate 。 后面 PhoneWindowManager 需要使用到 KeyguardService 的功能时,通过调用 KeyguardServiceDelegate.bindService 将 KeyguardService 的 binder 对象转化为 接口 封装到 KeyguardServiceWrapper 包装器,最后将 KeyguardServiceWrapper 赋值到 KeyguardServiceDelegate 的成员变量,完成整个代理模式的架构。 最终的方法调用流程: PhoneWindowManager -> KeyguardServiceDelegate ->KeyguardServiceWrapper->KeyguardService 通过创建KeyguardServiceDelegate来避免直接创建KeyguardService而不使用带来不必要的开销。属于延迟加载。 [SystemServer.java] 众所周知SystemServer用来完成服务的创建和初始化过程。 一:WindowManagerService.main();启动了WMS,可以看到new PhoneWindowManager()传入WMS的main方法中,它将被赋值到成员变量WindowManagerPolicy mPolicy; 二:wm.onInitReady();调用WMS的init方法,这里是KeyguardServiceDelegate的创建流程 [WindowManagerService.java] [WindowManagerService.java] 调用PhoneWindowManager.init方法 [PhoneWindowManager.java] 这里可以看到,在PhoneWindowManager.init函数中并没有直接创建KeyguardService对象,而是创建了代理对象KeyguardServiceDelegate。在后面需要使用到KeyguardService的功能时,通过调用KeyguardServiceDelegate.bindService将KeyguardService的binder对象转化为接口封装到KeyguardServiceWrapper包装器,最后将包装器赋值给KeyguardServiceDelegate的成员变量 [KeyguardServiceDelegate.java] [SystemServer.java] [SystemServer.java] [WindowManagerService.java] mPolicy指的是WindowManagerPolicy。而PhoneWindowManager实现了WindowManagerPolicy接口。mPolicy的赋值在WMS的构造函数中就已经完成了。而WMS的启动在systemServer中。 [PhoneWindowManager.java] [PhoneWindowManager.java] [PhoneWindowManager.java] 调用context.bindServiceAsUser(...)来绑定服务,重点关注以下几点 通过指定ComponentName来绑定服务。可以看到KeyguardServiceDelegate所在包名为 /frameworks/base/services/core/java/com/android/server/policy/keyguard/KeyguardServiceDelegate.java 寻找resources.getString(com.android.internal.R.string.config_keyguardComponent)的定义位置 [/frameworks/base/core/res/res/values/config.xml] 可以看到config_keyguardComponent对应启动的就是 KeyguardService 这个服务。通过 ServiceConnection 去指定拿到 KeyguardService 后,将 KeyguardService 转换为接口对象 IKeyguardService.Stub.asInterface(service) 来创建 KeyguardServiceWrapper 对象。看一看 KeyguardServiceWrapper 的创建过程 [KeyguardServiceWrapper.java] 可以看到将IKeyguardService service传递给了成员变量mService ServiceConnection mKeyguardConnection 里通过 KeyguardService 的创建了代理对象 KeyguardServiceWrapper 。 后续当需要使用到 KeyguardService 功能是将是以下的调用过程 PhoneWindowManager -> KeyguardServiceDelegate ->KeyguardServiceWrapper->KeyguardService

这里的delegate解释对吗?

英译中有个惯例, 如果不是有关文章修辞或写作手法, 习惯上把双重否定译作肯定.lz的不能委任双重否定就是事必躬亲的意思.这样比较符合两种语言的人的表达习惯.且, 事必躬亲, 用典, 雅.

Pledged delegates是什么意思

  Pledged Delegates_翻译  Pledged Delegates  宣誓代表票;  [例句]Senators Hillary Clinton and Barack Obama are vying for a total of31 pledged delegates in Montana and South Dakota.  参议员希拉里。克林顿和奥巴马正在蒙大拿州和南达科塔州竞争总共的31个的代表人数。

NSNotification是同步还是异步?和delegate相比有什么区别,效率呢?

1、NSNotification是同步还是异步? 默认情况下,创建的NSNotification是同步的, 发布通知 接收通知 执行结果 通过这里的时间间隔可以看出,在抛出通知以后,观察者在通知事件处理完成以后(这里我们休眠3秒),抛出者才会往下继续执行,也就是说这个过程默认是同步的;当发送通知时,通知中心会一直等待所有的observer都收到并且处理了通知才会返回到poster; 那能不能当成异步处理呢? 两种方法: 第一种方法,发布通知的时候搞在子线程中,当然了,接收方法触发的也是在子线程中 第二种方法,接收方法在子线程中执行 2、NSNotification和delegate相比有什么区别 1>NSNotification是一对多的关系,不需要两个之间建立什么联系,类似于一种广播似的发送消息,接受者只要是声明了接收信息,就能接收。消息接受者通过keyPath的方式指定需要接受的消息类型,通常在对象初始化完成以后声明开始接受消息,在对象被销毁前注销接受消息。 NSNotification发布一个广播的通知。(面向所有的类),当有谁需要这个通知的话,就注册成为它的会员(会员存在Array里)。notification通过管理array来实现事件的操作。 当哪个 会员 什么时候不需要再成为会员的时候,就需要注销(在dealloc里释放) 2>delegate是一对一的关系,首先两个要建立联系,才能进行相应的传值回调动作。 3、效率哪个更高 效率肯定是delegate比NSNotification高。

c++有 delegate关键词吗

delegate简单的说,就是有类型的函数指针

紧急求助,如何将Delegate作为参数传递

Delegate作为参数和其他类型的参数是一样的,你把Delegate当作一个类型就可以了

ios创建一个表格需要使用哪些delegate和datasource

在MVC中, 这种实现常用在设计View的时候.为了实现一个通用view的编写, 降低耦合度, 并按照UIKit的一贯习俗(例如UITableView), 而设计为用delegate告知view的使用者某些事件的到来, 用datasource获取必要的数据.看一个例子:View:MyView.h#import@protocol MyViewDelegate;@protocol MyViewDatasource;@interface MyView : UIView@property (nonatomic, assign) id myViewDelegate;@property (nonatomic, assign) id myViewDatasource;- (void)showAlert;@end/////////////////////////////////////////////@protocol MyViewDelegate@optional- (void)alertDidPop:(UIView *)myView;@end/////////////////////////////////////////////@protocol MyViewDatasource// the default is @required- (NSString *)textOfAlert;@endMyView.m#import "MyView.h"@implementation MyView@synthesize myViewDelegate;@synthesize myViewDatasource;- (void)showAlert{ UIAlertView *myAlertView = [UIAlertView new]; myAlertView.delegate = self; myAlertView.message = [self.myViewDatasource textOfAlert]; [myAlertView show]; [myAlertView release];}// after animation- (void)didPresentAlertView:(UIAlertView *)alertView{ [self.myViewDelegate alertDidPop:self];}@endController:ViewController.h#import#import "MyView.h"@interface ViewController : UIViewController@endViewController.m#import "ViewController.h"@implementation ViewController- (void)viewDidLoad{ [super viewDidLoad]; MyView *myView = [[MyView alloc]initWithFrame:CGRectMake(0, 0, 320, 460)]; myView.myViewDatasource = self; myView.myViewDelegate = self; [self.view addSubview:myView]; [myView showAlert]; [myView release];}- (void)alertDidPop:(UIView *)myView{ myView.backgroundColor = [UIColor yellowColor];}- (NSString *)textOfAlert{ return @"message from controller";}@end

jquery的delegate在手机端有什么bug吗

query的delegate有好几个缺憾。----或许是因为sizzle少提供了以refEl为参考、一个按selector来筛选els的filter(els,selector,refEl)的功能,jq需要自己去实现类似的功能。其一:selector是基于:root的,而不是:scope的。所以,在写代码时,需要带上scrope的定位部分。----注::root指document根节点,:scope指代理节点例如,代理div1的儿子,需要这样写:$("#div1").delegate("#div1>*","click",fun});而不是这样写:$("#div1").delegate(">*","click",fun});示例代码如:View Code其二:多个祖先满足条件时,只触发了target的closest的那一个祖先,而不是都触发。----想不通jquery为什么要采用这个策略示例代码如:View Code其三:与sizzle一样,可能是没有回溯,在某些情况下有bug。例如,当span有多个祖先是div时,这个代理会失效:$("body").delegate("body>div span","click",fun;});示例代码如:View Code

为什么C#的Lambda式不能直接转换成Delegate

因为C#中delegate定义的是一个类型,它极度类似于C的函数指针,是一个类型。其实严格来说并不是不能赋值,比如:Action bbb = () =>{Debug.WriteLine("1");};Action 在.net中就是一个delegate。

iOS 为什么delegate是nil

delegte一般用weak或者assign修饰。一般情况下,将对象A设置为对象B的delegate,A一定会被强引用,所以B的delegate不需要用strong修饰,这样可以避免循环引用等情况。如果发现delegate为nil,说明A已经被释放掉了,看看你代码执行顺序,或者其他什么原因导致A被提前释放。

请问ios开发中,self.delegate 与 _delegate 有没有区别?

没区别。都是取成员属性。。。一点分分都没用吗。。

c#经常使用delegate和event的朋友来看一个问题

不知道你测试过.NET的垃圾回收机制没有。我测试过,任何对象,在他的垃圾回收器里有个引用计数器,比如说你实例化了一个对象,则计数器为1,如果将这个对象传递到另外一个类中,并作为全局变量保存,则计数器为2,比方说放到一个List里面,无论你实例化该对象的地方是局部还是全局,只要有计数器不为0,则GC不会主动回收。如果在对象的生命周期类,想释放该对象的资源,你可以先移除引用,例如在List中Remove它,然后显示的设置该对象为null(这里很重要,我当时做压力测试,分配了200M的内存空间,但是如果这个数组不显示的设置为null,那么,在对他进行下一次分配以后,暂用的实际内存是400M,如果显示设置为null,则只是占用200M),例如:instance=null;。而+=这样的事件注册操作,并不会增加此类本身的引用计数器,所以,当这个对象生命周期结束时,会被自动释放(如果需要的话,请使用using语句,或者调用Dispose或Close方法)。这个垃圾回收机制,不仅对.NET有效,在Flex(Flash)当中亦然,Flex的垃圾回收做的比.NET的还差,这个也是大多数Flex程序员抱怨的地方。

ios 为什么keywindow和.delegate window是同一个

Delegate ,又称为 委托或代理, 它是一种设计模式。 学习iOS开发,需要深入理解 Delegate的用法。 Apple 对Delegate 有明确的说明。但理解起来还是有些抽象。  Delegate的用途:  用于改变或控制其他对象 。  Delegate 的定义:  (1)Delegate 是一个对象, 其类型为 id (anonymous type: 匿名类型);  (2) Delegate 的引用通常是一个实例变量 (instance variable), 命名为 delegate;  (3)Delegate 内所用的方法是 访问模式 (Accessors pattern)  Delegate Message 的命名:  发给Delegate的消息 通常带有(should, will, did) 之一。  should:期待delegate返回一个值;  will:表示变化发生之前 要做的事情;  did : 表示变化发生之后 要做的事情。  Cocoa Touh 的很多类都不同程度地用到Delgete。 比如: NSTextField, NSTableView。 其中 NSTableView 还用到了 Data Source。  其实,Data Source 也是一种委托。 Data Source 减少了 View 与 Model 之间的耦合性。 其中 , NSAppplication 实现了几十个委托方法。  Delegate 使用的注意事项:  Delegate 是一个 ID 类型的对象, 同样存在创建和释放问题。 对于Data Source , 只有Data Source的使用者 (比如Table View)释放后, Data Souce 才能被释放。 否则, 就会出现crash。 因为在table view 获取数据时, 数据已经不见了。  Delegate 可用在多个场景下,比如对象间的数据交互, 不同视图之间的行为交互。 若仅仅是数据交互, 可实现的方法还有很多。Delegate 尤其适用于视图之间的行为交互。

C#Delegate疑惑,请详细解释下private void SetValue(int i)方法中的每句

“为什么第一次InvokeRequired就是true”:因为你第一次调用的时候是在不同的线程所以invokereuqired是为true,而你后面的问题“InvokeRequired==false时执行progressBar1.Value=i;?”这是必须的因为执行了一个invoke操作,简单的你可以理解这个时候讲操作传递给了pb控件所在的线程,所以在invokereuqired=false的情况下,执行对pb的值更改操作 Invoke(newProgressDelegate(SetValue),i);SetValue是什么意思?SetValue是你自己定义的方法,这个语句的意思是将你SetValue方法通过delegate(委托)进行封装然后通过invoke传递给某个线程,某种情况下对我们来说这个线程是不可知道的,所以我们采用委托来封装我们方法来传递

XCode 中 Action outlet delegate三者区别在哪儿

  action其实就是delegate模式,专门用在View向ViewController传达信息/命令。而delegate语法用在一般场合。  delegate有两个作用,第一是反转控制流,比如在MVC模式中,本来控制流是由ViewController流向View,结果使用delegate,控制流由View流向ViewController。第二是抽象化,View的函数交给ViewController实现,可以让View更加抽象,不依赖于具体某个ViewController。  outlet是ViewController所知道的View中某个控件,可能是一个指针。安卓使用findViewById(R.id.my_button)函数来完成。而XCode使用拖拽,编译器会解释outlet关键字,然后执行类似过程,具体不详。为什么ViewController要知道View的某个控件?因为要操作它,比如设置title等等。上面说过,通常情况下控制流是由ViewController流向View的。

jQuery事件绑定方法bind,live,delegate和on的区别

bind是用来绑定一个或多个事件的,live其实bind的一个加强版,用来绑定通过JavaScript或者jQuery添加的DOM元素事件,其语法结构是一样123456$("p").bind("mouseenter mouseleave",function(){alert("ok");})$("p").live("mouseenter mouseleave",function(){alert("ok");})delegate用于事件委托,也是绑定过JavaScript或者jQuery添加的DOM元素事件。123$("div").delegate("p","click",function(){alert("p");})点击div下面的P执行alert;而on是在1.7之后新增的,是把bind,live,delegate全部合并在一起了,123$("div").on("click","p",function(){ alert(1); })不需要事件委托的时候把P去掉就会变成点击div触发了。个人建议根据版本来使用,语法其实都差不多,如果你是用1.7版本以上就建议用on,毕竟bind,live,delegate这些将来都会遗弃了,如有错误,请指出。顺便吐槽一下楼上的回答,不走心啊

如何使用Model View delegate自定义列表

c#为什么说eventhandler是一个委托 委托不是应该 delegate 定义的吗

定义(以下是摘自MSDN的定义)Delegate:用于声明委托。委托是一种引用类型,它引用类型的 Shared 方法或对象的实例方法。任何具有匹配参数类型和返回类型的过程均可用来创建此委托类的实例。然后就可以通过委托实例来调用过程。EventHandler:表示将处理不包含事件数据的事件的方法。可以这么理解1:EventHandler实际上就是一个特殊的委托,它是由.NET预定义好的一个委托,它的形式是固定的。2:使用EventHandler时,处理函数的返回值必须是Void类型,而使用Deleagate则没有这个限制。3:Delegate相当于一个函数的指针,用于绑定的函数返回值和参数列表要符合Delegate声明时的要求。

swift类中怎么使用自定义OC类的delegate

Swift调用OCSwift调用OC的时候需要在MixDemo-Bridging-Header.h文件中导入Swift会引用到的CO类的头文件。首先我们在ViewController.h头文件中声明一个函数:- (void) logYou;然后在实现文件中简单些一下实现:- (void)logYou {NSLog(@"log you");}然后我们在MixDemo-Bridging-Header.h文件中#import “ViewController.h”文件,command+s保存一下当前的编辑。然后回到SwiftDemo.swift文件中,在LogMe函数里我们调用一下OC的logYou。所以我们现在的逻辑是在OC的viewDidLoad中实例化SwiftDemo然后调用logMe,然后在SwiftDemo里的logMe里面实例化ViewController然后调用它的logYou。logMe代码如下:public func logMe() {print("log me");let vc = ViewController()vc.logYou()}然后再跑一下工程

delegate 与depute有何区别

同求我也不会

定义委托需要使用delegate关键字?还是委托类是一种数据类型?委托不是一种类的成员?这三个哪一

第一个

xib里怎么添加delegate

1 .如果你的textView是通过xib创建的,可以右击textView,然后将delegate牵连到file‘s owner上,你的file"s owner 关联到你相应的viewController类,在这个类的声明上加上< textviewdelegate >2.如果你的textView是在类里直接alloc或new出来的话,在实例化后面加上xxx(你的textView变量名).delegate = self.然后在该类的声明上加<uitextviewdelegate >

为什么delegate 用 assign 而不使用 retain

而用retain的话,计数器加1。我们有可能在别的地方期望释放掉delegate这个对象,然后通过一些判断比如说它是否已经被释放,做一些操作。但是实际上它retainCount还是1,没有被释放掉,要在UITableViewController的dealloc里面才被释放掉(这里我只是举个例子,一般retain的对象都是在dealloc里被释放)。这里就会造成一些问题出现。而如果你确定不会有冲突的问题出现的话,或者你也希望用到delegate的这个对象,直到你不用它为止,那么用..

event, delegate, event handler关系是什么?

event是事件,eventhandler是事件处理函数,事件处理函数可以是静态方法,也可以是实例方法。delegate是对eventhandler的包装,c++开发人员都知道静态函数指针和指向成员的指针,delegate就类似这样一个东西,event触发以后,框架需要调用eventhandler,这就需要知道eventhandler的地址,但是获取这个地址有那么一点小复杂,于是就引入了delegate协助我们获取eventhandler地址,它的作用就是把eventhandler地址封装好告诉框架。事件处理的时候,框架先找到delegate(相当于指针),通过delegate找到eventhandler地址,然后函数调用。

iOS中的强代理(strong delegate)

一般来说, iOS中的代理都是weak类型的, 这是因为一般代理者都是代理持有者的父对象, 而父对象会持有代理持有者. 因此, 如果代理是强类型, 则会导致循环引用. 虽说代理者不一定得是代理持有者的父对象, 但是这是最常见的使用场合, 用于子对象向父对象传递数据. 比如一个UIViewController是一个View的delegate, 在View上的某些操作需要传递给UIViewController, 从而UIViewController做出某些响应. 另一种情况, (父对象)并不需要持有代理持有者, 只是需要在某些操作时做出响应, 而这些响应并不需要(父对象)持有代理持有者, 但是需要代理持有者维持一定的什么周期. 比如一些连接网络的操作. 这时就不会出现循环引用的情况. 到底是使用strong delegate还是weak delegate, 归根结底由调用者(父对象)决定, 调用者是否需要持有代理持有者. 但是话说回来, delegate的weak(strong)属性需要在声明时就指定. 要是遇到有时需要strong delegate有时需要weak delegate时怎么办呢? 这时我们就需要用到另一种回调方式block. 在block中, 当可能引起循环引用时, 不直接持有父对象, 即self对象, 而是使用self对象的弱引用,比如使用 __weak typeof(self) weakSelf = self; 然后在block内部用weakSelf代替self. 在iOS中存在一类strong类型的delegate, 比如CoreAnimation的代理和NSURLSession的代理. 使用强代理是因为动画和网络请求在异步执行, 而异步执行中随时可能会丢失销毁对象, 当执行完成之后再手动销毁对象. 因此要使用strong delegate, 必须当任务完完成时在将delegate=nil来释放delegate. 由于笔者知识有限,如有错误,欢迎讨论指出。

C#delegate方法invoke和beginInvoke的区别

1)相同点:Invoke与BeginInvoke方法都是.NET底层内置嵌入到delegate对象里的。2)不同点:Invoke是显式调用委托链的方法,是一种间接形式,相对应的是直接调用的形式。直接调用形式经过C#编译后最终生成的IL仍然是采用间接形式,即delegateObj.Invoke([形参列表]);这是一种同步机制。BeginInvoke是异步调用方法。

C# Action 和Delegate,请高手帮忙详细解释下面的代码,特别是加???的那几条。

封装一个委托方法,绑定数据源,同步线程上运行上述封装

在Java中没有C#的delegate类型,ref和out类型的参数,那在Java中如何变通地实现相同功能

delegate:委托类型,Java中没有,但Java有“回调函数”这种形式,好像“观察者模式”也是这个思路。ref、out也没有,这是把形式参数的改变与实际参数关联起来。方法结束前,让实参的引用改变就行。

c# delegate 有序吗?

//调用多播委托(多路广播委托)时,//将按顺序调用所有调用列表中的方法,//因此,委托是有序的。//从下面这个例子也可以看出这点。using System;class Program{ delegate void Del(); public static void Main(string[] args) { const int Num=1000; int n=0; int[] arr=new int[Num]; Del d=() => Console.WriteLine("正在调用多播委托"); for(int i=0;i<Num;i++) { int[] temp=new int[1]; temp[0]=i; d+=delegate() { arr[n++]=temp[0]; };// d+=() => arr[n++]=temp[0]; } d();// 数组的有序说明委托是按顺序调用的 foreach(int e in arr) Console.Write("{0} ",e); Console.WriteLine(); Console.WriteLine("按任意键继续。。。"); Console.ReadKey(true); }}

c#中的delegate在vb.net中应该怎样表达?

改成Sub button_Clicked() Handles button.Clicked"获取当前加载的图片的信息String strInfo = String.Format(" FileLocation: {0} " & vbCrLf & " Height: {1} " &vbCrLf & " Width:{2}", pictureShowBox.ImageLocation, pictureShowBox.Image.Height, pictureShowBox.Image.Width);"通过消息框显示图片信息MessageBox.Show(strInfo, "Picture Information")End Sub

delegate和representative都是代表的意思,是不是用法都一样?

representative (非representive),多指具体的或物delegate ,多指官方代表团的团员

iOS中是否所有的delegate都用weak修饰?

通常来说,delegate都使用weak修饰,为了避免循环引用,但是并不是所有的情况都如此,通过NSURLSession的头文件我们发现,NSURLSession对于它的 delegate属性是强引用。这就意味着当session存在时,其delegate就不会被释放。另外,由session发起请求的缓存相关对象也会被其强引用并一直保留在内存中。

C#delegate 带参数,该怎么解决

/// <summary> /// 声明一个委托,用于代理一系列"无返回"及"带参"的自定义方法 /// </summary> /// <param name="sender">事件源</param> /// <param name="e">包含任何事件数据的 TestEvent</param> public delegate void MyEventHandler(object sender, TestEvent e);/// <summary> /// TestEvent 中可以加任意参数,但必须继承EventArgs /// </summary> public class TestEvent : EventArgs { public string Name { get; set; } }

jQuery中的.on和.delegate的区别

两者区别是seleter和events顺序不同delegate和on方法被选元素的子元素必须是"合法的"子元素。

swift delegate 使用

1、声明一个deleagte 2、点击UIButton 执行delegate 3、delegate.responds 安全检测

C#委托使用中如何创建Delegate对象

取得委托中的方法可以用这个 Delegate[] delArray = 委托对象.GetInvocationList();然后遍历调用就可以

C#.Net 中的委托 delegate 有没有使用新的线程

没新线程f1、f2依调用内部实现其实维护集合

representative和delegate的区别

representative 是自下而上选出的代表; delegate 是委派的代表(通常是参见谈判、会谈、协商、交流的)。 希望对你有所帮助~~

deviation和delegate是近义词吗

不是。

delegation 和delegate是一对一关系吗

delegation 是什么玩意儿

delegate和represent的区别

delegate :指一般被派参加某一会议的代表.He is one of the delegates to the conference.(他是与会代表之一.)representative :一般指被选举或委派代表某人或一些人或某个较大团体的人,其职务有时是较长期的.A representative of the company will call on you to assess the damage.(公司的代表将前往贵处评估受损失的状况.)

delegate和represent的区别?

1、delegate,通常意思是指的被选举或被推出选中出来的代表,来做决策或发表某一团队群体的观点的代表。如,与会代表的代表。2、representative,一般指的美国参众两院里众议院里的代表,即众议员。但是众议员(representative),在美国参众两院中,有时众议员也被叫作delegate。而参议院(senate)里的参议员一般只有senator称呼。除此以外,美国国会(Congress of the United States),众议院里的众议员也用congressman,和congresswoman称呼,参议院里的参议员一般不用做此称呼。

c#使用代表(delegate)有什么好处?为什么要使用?什么时候需要使用

请访问这个链接,很详细很好懂。

如何创建一个delegate文件

大部分Xcode工程模板都会自动地为你创建Delegate对象,提供一个基本类,你可以在当你需要定义自己的应用程序行为的时候修改它。在MoveMe工程中,应用程序delegate类的定义在MoveMeAppDelegate.h文件中,实现位于 MoveMeAppDelegate.m文件中。应用程序的delegate对象和标准UIApplication对象以串行方式工作,响应应用程序中的状态改变。应用程序对象负责大部分工作,但是delegate负责几个主要的工作: -建立应用程序窗口并且初始化用户界面。 - 为所有自定义数据引擎提供额外的初始化工作。 - 响应中断,诸如电话呼入或接收到短信之类。 - 通过释放额外的内存来响应内存不足的情况。 - 当系统需要应用程序退出的时候负责退出应用程序。 - 处理从外部传入应用程序的URLs。 - 响应设备的定向改变。在启动时,最关心的是delegate对象的创建和将应用程序窗口展示给用户,该处理的细节在“Creating the Application Window”中描述。当应用退出时,delegate对象需要顺序的执行应用的shutdown操作,并保存所有下次启动时需要的状态信息。工程中的主要nib文件用于连接应用程序对象和创建的delegate对象。一个nib文件其实就是一个资源文件,它包含了一套freeze-dried对象。你可以使用Interface Builder程序来创建和编辑nib文件,指定你想要的对象在运行时装载进你的应用程序。当你的应用程序在运行时装载nib文件时,nib-loading代码会自动地在该nib文件里重新创建对象,正确地配制它们并且使其有效。望采纳!!!

【iOS】协议(Protocol)和代理(Delegate)

协议(Protocol)类似Java中的接口,它是一个功能方法的集合。协议本身不是一个类,不能自己实现协议里的方法,而是委托其他类去实现。通常用来实现委托代理设计模式,实现不同类对象之间的时间消息通信。协议中的方法默认都是@required,即使用该协议的类必须实现协议里的这些方法。开发者也可以使用@optional来选择性地实现某个方法。 代理(Delegate)是一种设计模式,在Objective-C中通过协议(Protocol)来实现。可以使一个对象在特定时刻通知其他类的对象去实现任务,不需要获取那些对象的指针,实现不同对象之间的通行。

Delegate利用委托,将方法作参数传值,并且接收返回值,我该怎么写

不用把委托传进去,委托本身就是一个类,你在类中定义委托后,把方法赋给委托,然后在CallFuncThread方法中调用委托就行了大致如下public delegate void Delegate;Delegate delegate = methodName;public static bool CallFuncThread(TimeSpan timeSpan){//一些操作完成后,开始调用委托中的方法delegate;}

如何使用,而不是功能Delegate.CreateDelegate定义一个委托

  首先来看看一般的委托定义方法。  public delegate string MyDelegate(string message);  MSDN定义,委托是一种数据结构,它引用静态方法或引用类实例及该类的实例方法。  但是委托的本质是一个由系统自动生成的类,我们首先看看IL里面的MyDelegate的结构  可以看到实际上MyDelegate是继承自MulticastDelegate的类  MSIL表示方式如下:  .class public auto ansi sealed EmitDemo.DelegateDemo.MyDelegate  extends [mscorlib]System.MulticastDelegate  {  } // end of class EmitDemo.DelegateDemo.MyDelegate  .method public hidebysig specialname rtspecialname  instance void .ctor(object "object",  native int "method") runtime managed  {  } // end of method MyDelegate::.ctor  .method public hidebysig newslot virtual  instance string Invoke(string message) runtime managed  {  } // end of method MyDelegate::Invoke    不考虑异步调用,实际的类大概是这样的表示形式,但是C#并不允许直接继承MulticastDelegate,所以编译是无法通过的。  public class MyDelegate:MulticastDelegate  {  public MyDelegate(object target,IntPtr method)  :base(target,method)  {    }  public override string Invoke(string message){}  }  接下来仿照这个定义来实现委托类  首先是moduleBuilder 经常使用Emit的应该很熟悉了  string name = "MyDelegateDemo";  string fileName = name + ".dll";  var assemblyName = new AssemblyName(name);  var assemblyBuilder = AppDomain.CurrentDomain.DefineDynamicAssembly(assemblyName,  AssemblyBuilderAccess.RunAndSave);  var moduleBuilder = assemblyBuilder.DefineDynamicModule(name, fileName);  接下来是定义类,要点是修饰参数要一致,基类是MulticastDelegate  //public auto ansi sealed  var delegateBuilder = moduleBuilder.DefineType("MyDelegate",  TypeAttributes.Public | TypeAttributes.AutoLayout | TypeAttributes.AnsiClass |  TypeAttributes.Sealed, typeof(MulticastDelegate));  在设置构造函数,修饰参数也要一致,函数参数为object和IntPtr  最重要的是最后一句设置方法实现标志为runtime  // .method public hidebysig specialname rtspecialname  // instance void .ctor(object "object",  // native int "method") runtime managed  //{  //} // end of method MyDelegate::.ctor  var constructorBuilder = delegateBuilder.DefineConstructor(  MethodAttributes.Public | MethodAttributes.HideBySig | MethodAttributes.SpecialName |  MethodAttributes.RTSpecialName,  CallingConventions.Standard, new[] { typeof(object), typeof(IntPtr) }  );  constructorBuilder.SetImplementationFlags(MethodImplAttributes.Runtime);  然后是定义方法Invoke,这里定义的返回值和参数都是string 可以根据需要调整。  同样修饰要一致,最后也要设置方法实现标志为Runtime  // .method public hidebysig newslot virtual  // instance string Invoke(string message) runtime managed  //{  //} // end of method MyDelegate::Invoke  var resultType = typeof(string);  var paramTypes = new[] { typeof(string) };  var methodBuilder = delegateBuilder.DefineMethod("Invoke",  MethodAttributes.Public | MethodAttributes.HideBySig | MethodAttributes.NewSlot |  MethodAttributes.Virtual,  CallingConventions.Standard, resultType, paramTypes);  methodBuilder.SetImplementationFlags(MethodImplAttributes.Runtime);    最后创建类型,好了,定义完成了。  var delegateType = delegateBuilder.CreateType();  接下来就需要调用测试一下了。  注意不能用Activator.CreateInstance()来初始化代理而是Delegate.CreateDelegate。  public class MyClass  {  public string MyMethod(string message)  {  Console.WriteLine(message);  return message;  }  }    调用  MyClass myClass = new MyClass();  var myDelegate = Delegate.CreateDelegate(delegateType, myClass, "MyMethod");  myDelegate.DynamicInvoke("Hello World!");  结果 Hello World!  OK 成功了。

关于C#的委托delegate

答案就是你说的这样的。委托起始和观察者模式实现的功能是一样的。public delegate void GreetingDelegate(string name);这样的委托就只能委托 返回值是 void 参数为 string name的方法,方法名不需要一样。只要返回值和参数列表一致就行。和接口差不多。怎么定义的接口,就得怎么实现。如果有不同的参数的多个方法就只能再定义一个委托。或者如果是多个同类型的参数,比如public delegate void GreetingDelegate(string name);public delegate void GreetingDelegate1(string name, string str);public delegate void GreetingDelegate2(string name, string str, string str2);如果你觉得这样麻烦的话。可以public delegate void GreetingDelegate(params string name);

delegate机制是什么

是委托机制,也可说是代理机制。

designate怎么用和delegate有什么区别?

designate [ "dezigneit ] . . v. 指定,标示 delegate [ "deligit ] . . n. 代表 vt. 派…为代表;委任

介绍一下C#中delegate的应用

Delegate类简介------------------------ 命名空间:System程序集:mscorlib(在 mscorlib.dll 中) 委托(Delegate)类是一种数据结构,通过它可引用静态方法或引用类实例及该类的实例方法。 以往的界面编程中我们应该都接触过各种类型的事件驱动(event driven)的处理模式,在这种模式里,我们定义相应事件触发的函数。例如:Button1 的 Click事件,我们可以编写Button1_Click 或 Btn1Clicked等函数来做相应的驱动处理。而事件与驱动函数的对应关系就是通过委托(Delegate)类来关联的。其实委托(Delegate)类这种数据结构有些类似于之前C/C++中的函数指针。Delegate类一个简单应用------------------------ 1.定义一个Delegate函数数据结构2.定义Delegate将引用的静态方法或引用类实例及该类的实例方法3.Delegate数据变量指向实例方法4.通过Delegate数据变量执行实例方法A very basic example (TestClass.cs):using System;namespace MySample{ class TestClass { //1.定义一个Delegate函数数据结构 public delegate void GoDelegate(); [STAThread] static void Main(string[] args) { //3.Delegate数据变量指向实例方法 GoDelegate goDelegate = new GoDelegate( MyDelegateFunc); //4.通过Delegate数据变量执行实例方法 goDelegate(); return; } //2.定义Delegate将引用的静态方法或引用类实例及该类的实例方法 public static void MyDelegateFunc() { Console.WriteLine("delegate function..."); } }}编译执行结果:# TestClass.exedelegate function...使用Delegate类和Override实现多态的比较----------------------------------------------- 1.使用Delegate类的时候,下面的例子可以很清楚的说明。 1.1 首先定义一个动物基类(MyAnimalDelegateClass), 基类中有显示属性的(ShowAnimalType)的public方法。 并且在ShowAnimalType方法中调用Delegate引用的实例方法 1.2 定义狮子(LionDelegateClass)和马(HorseDelegateClass)两个子类。Delegate与各自的实例方法绑定 实现不同的属性显示(ShowAnimalType)方法。////Delegate example (TestClass.cs):using System;namespace MySample{ class TestClass { [STAThread] static void Main(string[] args) { //狮子(LionDelegateClass)的属性显示(ShowAnimalType)方法调用 LionDelegateClass lionDelegate = new LionDelegateClass(); lionDelegate.ShowAnimalType("MySample"); //马(HorseDelegateClass)的属性显示(ShowAnimalType)方法调用 HorseDelegateClass horseDelegate = new HorseDelegateClass(); horseDelegate.ShowAnimalType("MySample"); } } //动物基类(MyAnimalDelegateClass) public class MyAnimalDelegateClass { //Delegate数据结构定义 public delegate void DelegateFunction(string strFuncName); private DelegateFunction m_delegateFunction = null; //Delegate类型的属性 public DelegateFunction delegateFunction { get { return m_delegateFunction; } set { m_delegateFunction = value; } } //属性显示(ShowAnimalType)方法 public void ShowAnimalType(string strFuncName) { if (delegateFunction != null) { object[] args = {strFuncName}; //调用Delegate引用的实例方法 delegateFunction.DynamicInvoke(args); } } } //狮子(LionDelegateClass) public class LionDelegateClass:MyAnimalDelegateClass { public LionDelegateClass() { this.delegateFunction = new DelegateFunction(subFunction1); } //狮子(LionDelegateClass)实例方法的实装 private void subFunction1(string strFuncName) { System.Console.WriteLine( string.Format("[{0}]This is a lion....", strFuncName)); } } //马(HorseDelegateClass) public class HorseDelegateClass:MyAnimalDelegateClass { public HorseDelegateClass() { this.delegateFunction = new DelegateFunction(subFunction2); } //马(HorseDelegateClass)实例方法的实装 private void subFunction2(string strFuncName) { System.Console.WriteLine( string.Format("[{0}]This is a horse....", strFuncName)); } }}编译执行结果:# TestClass.exe[MySample]This is a lion....[MySample]This is a horse....2.使用Override实装的时候,参考下面的例子。 1.1 首先定义一个动物基类(AbstractAnimalNoDelegateClass), 基类中有显示属性的(ShowAnimalType)的public方法。 并且在ShowAnimalType方法中调用抽象方法(NoDelegateFunction) 1.2 定义狮子(LionNoDelegateClass)和马(HorseNoDelegateClass)两个子类。 子类中实装抽象方法(NoDelegateFunction) 实现不同的属性显示(ShowAnimalType)方法。////Override example (TestClass.cs):using System;namespace MySample{ class TestClass { [STAThread] static void Main(string[] args) { //狮子(LionNoDelegateClass )的属性显示(ShowAnimalType)方法调用 LionNoDelegateClass lionNoDelegate = new LionNoDelegateClass(); lionNoDelegate.ShowAnimalType("MySample"); //马(HorseNoDelegateClass )的属性显示(ShowAnimalType)方法调用 HorseNoDelegateClass horseNoDelegate = new HorseNoDelegateClass(); horseNoDelegate.ShowAnimalType("MySample"); } } //动物基类(AbstractAnimalNoDelegateClass) public abstract class AbstractAnimalNoDelegateClass { public void ShowAnimalType(string strFuncName) { //抽象方法(NoDelegateFunction)调用 NoDelegateFunction(strFuncName); } //在基类中定义抽象方法(NoDelegateFunction) protected abstract void NoDelegateFunction(string strFuncName); } //狮子(LionNoDelegateClass ) public class LionNoDelegateClass:AbstractAnimalNoDelegateClass { // 子类中实装抽象方法(NoDelegateFunction) protected override void NoDelegateFunction(string strFuncName) { System.Console.WriteLine( string.Format("[{0}]This is a lion....", strFuncName)); } } //马(HorseNoDelegateClass ) public class HorseNoDelegateClass:AbstractAnimalNoDelegateClass { // 子类中实装抽象方法(NoDelegateFunction) protected override void NoDelegateFunction(string strFuncName) { System.Console.WriteLine( string.Format("[{0}]This is a horse....", strFuncName)); } }}编译执行结果:# TestClass.exe[MySample]This is a lion....[MySample]This is a horse....3.比较Delegate和Override实装方式 可以看出Delegate实装方式中,相当于定义一个函数指针的成员变量。 通过把实装函数的地址赋给该成员变量,实现同样的方法,处理方式的不同。 而Override方式中,则是在父类中预先定义好接口,通过实装的不同, 来实现同样的方法,处理方式的不同。 Delegate实装方式比较灵活,适合设计不是很完善的场合,便于修改。 Override方式封装性好,相对比较安全。MulticastDelegate 类的应用--------------------------------- 在C#中,委托(Delegate)类是多路委托,这就说可以同时指向多个处理函数,并且可以按照委托的先后顺序,执行相应的函数。如下例:using System;namespace MySample{ class TestClass { [STAThread] static void Main(string[] args) { DogDelegateClass dogDelegate = new DogDelegateClass(); dogDelegate.ShowAnimalType("MySample"); } public class MyAnimalDelegateClass { public delegate void DelegateFunction(string strFuncName); private DelegateFunction m_delegateFunction = null; public DelegateFunction delegateFunction { get { return m_delegateFunction; } set { m_delegateFunction = value; } } public void ShowAnimalType(string strFuncName) { if (delegateFunction != null) { object[] args = {strFuncName}; delegateFunction.DynamicInvoke(args); } } } public class DogDelegateClass:MyAnimalDelegateClass { public DogDelegateClass() { //多路委托函数 设定 this.delegateFunction = new DelegateFunction(subFunction31); this.delegateFunction += new DelegateFunction(subFunction32); } //委托函数1 private void subFunction31(string strFuncName) { System.Console.WriteLine( string.Format("[{0}]This is a dog....", strFuncName)); } //委托函数2 private void subFunction32(string strFuncName) { System.Console.WriteLine( string.Format("[{0}]This is a nice dog....", strFuncName)); } }}编译执行结果:# TestClass.exe[MySample]This is a dog....[MySample]This is a nice dog....

delegate c#

public VoidDelegate OnDragUpEvent; 这些就是定义在 需要的时候,只要设为 无参无返回值的方法就行了。

E—01:delegate,representative,senator的区别

1、delegate,通常意思是指的被选举或被推出选中出来的代表,来做决策或发表某一团队群体的观点的代表。如,与会代表的代表。(delegate 做动词时,意味着将权力下放或委托一个人作为代表去执行某件事。) 2、representative,一般指的美国参众两院里众议院里的代表,即众议员。 但是众议员(representative),在美国参众两院中,有时众议员也被叫作delegate。 3、参议院(senate)里的参议员一般只有senator称呼。 4、除此以外,美国国会(The Congress of the United States),众议院里的众议员也用congressman,和congresswoman称呼,参议院里的参议员一般不用做此称呼。 5、为了方便理解我们以弗吉尼亚州议会及其构成为例(以下内容摘自维基百科): Commonwealth of Virginia, and the oldest continuous law-making body in the New World (Western Hemisphere), established on July 30, 1619. The General Assembly is a bicameral body consisting of a lower house(下议院,即众议院), the Virginia House of Delegates , with 100 members, and an upper house(上议院,即参议院), the Senate of Virginia , with 40 members. Combined, the General Assembly consists of 140 elected representatives from an equal number of constituent districts across the commonwealth. The House of Delegates is presided over by the Speaker of the House, while the Senate is presided over by the Lieutenant Governor of Virginia. The House and Senate each elect a clerk and sergeant-at-arms. The Senate of Virginia"s clerk is known as the "Clerk of the Senate" (instead of as the "Secretary of the Senate", the title used by the U.S. Senate).

关于C#中delegate委托,到底有何好处,举个例子说说吧

  delegate类似于C++中的指针,通过委托调用函数,可以跨区域,跨线程,跨对象假如你在B类中想调用A类的某个方法,但是A类和B类基本上没什么关联,A类中的对象又不能传递到B类,那么你就可以使用委托来做,delegate还有一个好处就是可以隐匿方法的实现主体,让别人看不到你的方法是如何实现的!!delegate也可以同时调用一系列的类似方法组!!

IOS开发之delegate和Notification的区别

一般来说呢 delegate是两个类之间的关系,通知就不同了,可以一对多,也可以多对一,还可以多对多,就是一个发布者一个监听者,一个发布者多个监听者,多个发布者多个 多个监听者 代理需要有协议 要声明协议 实现协议中方法 设置代理 通知需要设置通知中心 设置发布者和监听者

权力下放为什么是delegate不是devolve

这两个单词的区别在于delegate有“委托,授权”之意,这时候需要结合全文理解是怎样的“权力下放”了,举个例子,如果是我本身有的权力,授权给本来没有权力的你,并且我还随时可以收回我的授权(说白了我才是真正的老大,想给你权力就给你,不想给你权力我就收回),这时候就用delegate。

Delegate是什么,举例说明!

Delegate是是一种引用类型。用于声明委托。委托是一种引用类型,它引用类型的 Shared 方法或对象的实例方法。任何具有匹配参数类型和返回类型的过程均可用来创建此委托类的实例。然后就可以通过委托实例来调用过程。[ <attrlist> ] [ accessmodifier ] _[ Shadows ] Delegate [ Sub | Function ] name [( Of typeparamlist )] [([ parameterlist ])] [ As type ]

jquery中的delegate函数有什么用

delegate()函数用于为指定元素的一个或多个事件绑定事件处理函数。此外,你还可以额外传递给事件处理函数一些所需的数据。即使是执行delegate()函数之后新添加的元素,只要它符合条件,绑定的事件处理函数仍然对其有效。此外,该函数可以为同一元素、同一事件类型绑定多个事件处理函数。触发事件时,jQuery会按照绑定的先后顺序依次执行绑定的事件处理函数。要删除通过delegate()绑定的事件,请使用undelegate()函数。从jQuery 1.7开始,请优先使用事件函数on()替代该函数。该函数属于jQuery对象(实例)。语法jQuery 1.4.2 新增该函数。其主要有以下两种形式的用法:用法一:jQueryObject.delegate( selector , events [, data ], handler )用法二:jQuery 1.4.3 新增支持该用法。jQueryObject.delegate( selector, eventsMap )参数参数描述selector String类型一个jQuery选择器,用于指定哪些后代元素可以触发绑定的事件。如果该参数为null或被省略,则表示当前元素自身绑定事件(实际触发者也可能是后代元素,只要事件流能到达当前元素即可)。 events String类型一个或多个用空格分隔的事件类型和可选的命名空间,例如"click"、"focus click"、"keydown.myPlugin"。 data 可选/任意类型触发事件时,需要通过event.data传递给事件处理函数的任意数据。 handler Functidelegate类型指定的事件处理函数。 eventsMap Object类型一个Object对象,其每个属性对应事件类型和可选的命名空间(参数events),属性值对应绑定的事件处理函数(参数handler)。 关于参数events中可选的命名空间,请参考最下面的示例代码。关于参数selector,你可以简单地理解为:如果该参数等于null或被省略,则为当前匹配元素绑定事件;否则就是为当前匹配元素的后代元素中符合selector选择器的元素绑定事件。参数handler中的this指向当前匹配元素的后代元素中触发该事件的DOM元素。如果参数selector等于null或被省略,则this指向当前匹配元素(也就是该元素)。delegate()还会为handler传入一个参数:表示当前事件的Event对象。参数handler的返回值与DOM原生事件的处理函数返回值作用一致。例如"submit"(表单提交)事件的事件处理函数返回false,可以阻止表单的提交。如果事件处理函数handler仅仅只用于返回false值,可以直接将handler设为false。返回值delegate()函数的返回值为jQuery类型,返回当前jQuery对象本身。重要说明:delegate()函数并不是为当前jQuery对象匹配的元素绑定事件处理函数,而是为它们的后代元素中符合选择器selector参数的元素绑定事件处理函数。delegate()函数并不是直接为这些后代元素挨个绑定事件,而是"委托"给当前jQuery对象的匹配元素来处理。由于DOM 2级的事件流机制,当后代元素selector触发事件时,该事件会在事件冒泡中传递给其所有的祖辈元素,当事件流传递到当前匹配元素时,jQuery会判断是哪个后代元素触发了事件,如果该元素符合选择器selector,jQuery就会捕获该事件,从而执行绑定的事件处理函数。示例&说明以点击事件("click")为例,以下是jQuery中事件函数的常规用法(某些函数也存在其它形式的用法,此处暂不列出):// 这里的选择器selector用于指定可以触发事件的元素// 这里的选择器ancestor应是selector的祖辈元素,selector触发的事件可以被其祖辈元素在事件流中捕获,从而以"代理"的形式触发事件。// jQuery 1.0+ (1.4.3+支持参数data)$("selector").click( [ data ,] handler );// jQuery 1.0+ (1.4.3+支持参数data)$("selector").bind( "click" [, data ], handler );// jQuery 1.3+ (1.4+支持参数data)$("selector").live( "click" [, data ], handler );// jQuery 1.4.2+$("ancestor").delegate( "selector", "click" [, data ], handler );// jQuery 1.7+$("ancestor").on( "click", "selector" [, data ], handler );请参考下面这段初始HTML代码:<div id="n1"> <p id="n2"><span>CodePlayer</span></p> <p id="n3"><span>专注于编程开发技术分享</span></p> <em id="n4">http://www.365mini.com</em></div><p id="n5">Google</p>我们为<div>中的所有<p>元素绑定点击事件:// 为div中的所有p元素绑定click事件处理程序// 只有n2、n3可以触发该事件$("div").delegate("p", "click", function(){ // 这里的this指向触发点击事件的p元素(Element) alert( $(this).text() );});运行代码(其他代码请自行复制到演示页面运行)如果要绑定所有的<p>元素,你可以编写如下jQuery代码://为所有p元素绑定click事件处理程序(body内的所有p元素,就包含所有的p元素)//n2、n3、n5均可触发该事件$("body").delegate("p", "click", function(event){// 这里的this指向触发点击事件的p元素(Element) alert( $(this).text() );});此外,我们还可以同时绑定多个事件,并为事件处理函数传递一些附加的数据,我们可以通过jQuery为事件处理函数传入的参数event(Event事件对象)来进行处理:var data = { id: 5, name: "李四" };//为n5绑定mouseenter mouseleave两个事件,并为其传入附加数据data//附加数据可以是任意类型$("body").delegate("#n5", "mouseenter mouseleave", data, function(event){ var $me = $(this); var options = event.data; // 这就是传入的附加数据 if( event.type == "mouseenter"){ $me.html( "你好," + options.name + "!"); }else if(event.type == "mouseleave" ){ $me.html( "再见," + options.name + "!"); } } );此外,即使符合条件的元素是delegate()函数执行后新添加,绑定事件对其依然有效。同样以初始HTML代码为例,我们可以编写如下jQuery代码://为div中的所有p元素绑定click事件处理程序//只有n2、n3可以触发该事件$("div").delegate("p", "click", function(event){ alert( $(this).text() );});//后添加的n6也可以触发上述click事件,因为它也是div中的p元素$("#n1").append("<p id="n6">上述绑定的click事件对此元素也生效!</p>");参数events还支持为事件类型附加额外的命名空间。当为同一元素绑定多个相同类型的事件处理函数时。使用命名空间,可以在触发事件、移除事件时限定触发或移除的范围。function clickHandler(event){ alert( "触发时的命名空间:[" + event.namespace + "]");}var $p = $("p");// A:为所有p元素绑定click事件,定义在foo和bar两个命名空间下$("body").delegate( "p", "click.foo.bar", clickHandler );// B:为所有p元素绑定click事件,定义在test命名空间下$("body").delegate( "p", "click.test", clickHandler );var $n2 = $("#n2");// 触发所有click事件$n2.trigger("click"); // 触发A和B (event.namespace = "")// 触发定义在foo命名空间下的click事件$n2.trigger("click.foo"); // 触发A (event.namespace = "foo")// 触发定义在bar命名空间下的click事件$n2.trigger("click.bar"); // 触发A (event.namespace = "bar")// 触发同时定义在foo和bar两个命名空间下的click事件$n2.trigger("click.foo.bar"); // 触发A (event.namespace = "bar.foo")// 触发定义在test命名空间下的click事件$n2.trigger("click.test"); // 触发B (event.namespace = "test")// 移除所有p元素定义在foo命名空间下的click事件处理函数$p.undelegate( "click.foo" ); // 移除Adelegate()函数的参数eventsMap是一个对象,可以"属性-值"的方式指定多个"事件类型-处理函数"。对应的示例代码如下:var events = { "mouseenter": function(event){ $(this).html( "你好!"); }, "mouseleave": function(event){ $(this).html( "再见!"); }};//为n5绑定mouseenter mouseleave两个事件,并为其传入附加数据data$("body").delegate("#n5", events);

delegate和event的区别

这两个单词完全不搭界,很好分啊,八竿子打不着的单词还要区别啥?delegate ,可做名词亦可作动词,做动词时指的是:授予部分权利给某位比你级别低的人,大概相当于中文里的授权委托,下放权力之类的意思。做名词时:当然就是指的持有这授予的权利的某人啦----既中文里的“代表(指人)”。event只能做名词:指的是那些社会活动(体育比赛,演出,聚会等等)或者是(重要,有趣,不寻常的)事件。

delegate的形容词形式

形容词delegates,从名词转换成形容词举例:XXXXsentadelegatespartytoparticipateinapeacetalk.多delegate人数的队伍。有时候,用delegateparty也行。形容词delegating,从动词转换成形容词举例:Thecommandpostassignsadelegatingpartytoassumetheroleofdealingwithstrangerscrossingtheborder.-附有代表作用的团队形容词delegated,以过去动词充当形容词举例:Themanagerisexecutinghisdelegatedactionspostedtohim.-受委任的行动

delegate包含的词根

"delegate",n 代表;代理人(被授权代表别人的人)=representative<br>【 记】de,legate(n 使者)-代表;"delete",v 删除=erase<br>【 记】de去掉,lete=litter(n 垃圾)-去掉垃圾-删除del是计算机上的删除键<br>【 反】record(vt 记录)"

delegate和represent的区别?

delegate :指一般被派参加某一会议的代表.He is one of the delegates to the conference.(他是与会代表之一.)representative :一般指被选举或委派代表某人或一些人或某个较大团体的人,其职务有时是较长期的.A repre...

商务英语delegate是什么意思

代表的意思(有名词和动词两种词性)

delegate怎么记忆

delegate的记忆方法如下:1、分解壹词:Delegate可以分为De和legate两部分,其中De可以联想到英文单词“delivery”的缩写,表示“交付”或“分派”的意思;legate可以联想到“lifting weights”,表示“举重”的意思。因此,Delegate可以理解为从“交付”或“分派”某个任务开始,完成这项任务就像是在“举重”一样。2、联想代表:Delegate在英文中也有“代表”的意思。可以将其与中文中的代表联系在一起,用“代表”的意思来记忆“Delegate”。例如,Delegate可以理解为在某个会议上代表某个机构或团体发言和行动等。同时,可以将“Delegate”和“representative”联想在一起,进行深化记忆。3、Visualize the word: 将Delegate这个单词形象化,比如我们可以将其联想为某个企业的高管正在向下属分派任务,或是一个人站在舞台上代表某个国家发言,这样可以帮助我们更容易地理解和记忆Delegate这个单词。4、卡片记忆法:可以写下Delegate这个单词,并在卡片的背面写下该单词的意思和用法。随后,每天拿出卡片,翻转背面进行记忆,直到完全掌握为止。Delegate的释义Delegate可以作为动词和名词使用。作为动词,delegate的释义为“授权;委派”,例如:1、The boss delegated the task to his assistant. (老板将任务委派给了他的助手。)2、The company delegates the responsibility of hiring to the HR department. (公司把雇佣的责任委派给了人力资源部门。)作为名词,delegate的释义为“代表;代表团”,例如:1、The delegation has been sent to negotiate the peace treaty. (代表团被派去协商和平条约。)2、The delegates from each country discussed the issues at the conference. (来自各国的代表们在会议上讨论了问题。)

delegate是什么意思

delegate-有道翻译释义n. 代表vt. 委派…为代表网络委托,代表,Delegate (CLI)短语delegate to参加,的代表,代表delegate trust转委信托,转委信讬