资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

什么时候使用flags

这篇文章主要讲解了“什么时候使用flags”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“什么时候使用flags”吧!

创新互联制作网站网页找三站合一网站制作公司,专注于网页设计,成都做网站、成都网站设计,网站设计,企业网站搭建,网站开发,建网站业务,680元做网站,已为成百上千家服务,创新互联网站建设将一如既往的为我们的客户提供最优质的网站建设、网络营销推广服务!

Possible flags:(可用的 flags:)

once: 确保这个回调列表只执行( .fire() )一次(像一个递延 Deferred).

memory: 保持以前的值,将添加到这个列表的后面的最新的值立即执行调用任何回调 (像一个递延 Deferred).

unique: 确保一次只能添加一个回调(所以在列表中没有重复的回调).

stopOnFalse: 当一个回调返回false 时中断调用

默认情况下,回调列表将像事件的回调列表中可以多次触发。

如何在理想情况下应该使用的flags的例子,见下文:

$.Callbacks( "once" ):

var callbacks = $.Callbacks( "once" );

callbacks.add( fn1 );

callbacks.fire( "foo" );

callbacks.add( fn2 );

callbacks.fire( "bar" );

callbacks.remove( fn2 );

callbacks.fire( "foobar" );

/*

output:

foo

*/

$.Callbacks( "memory" ):

var callbacks = $.Callbacks( "memory" );

callbacks.add( fn1 );

callbacks.fire( "foo" );

callbacks.add( fn2 );

callbacks.fire( "bar" );

callbacks.remove( fn2 );

callbacks.fire( "foobar" );

/*

output:

foo

fn2 says:foo

bar

fn2 says:bar

foobar

*/

$.Callbacks( "unique" ):

var callbacks = $.Callbacks( "unique" );

callbacks.add( fn1 );

callbacks.fire( "foo" );

callbacks.add( fn1 ); // repeat addition

callbacks.add( fn2 );

callbacks.fire( "bar" );

callbacks.remove( fn2 );

callbacks.fire( "foobar" );

/*

output:

foo

bar

fn2 says:bar

foobar

*/

$.Callbacks( "stopOnFalse" ):

function fn1( value ){

console.log( value );

return false;

}

function fn2( value ){

fn1( "fn2 says: " + value );

return false;

}

var callbacks = $.Callbacks( "stopOnFalse" );

callbacks.add( fn1 );

callbacks.fire( "foo" );

callbacks.add( fn2 );

callbacks.fire( "bar" );

callbacks.remove( fn2 );

callbacks.fire( "foobar" );

/*

output:

foo

bar

foobar

*/

感谢各位的阅读,以上就是“什么时候使用flags”的内容了,经过本文的学习后,相信大家对什么时候使用flags这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


网站题目:什么时候使用flags
网页链接:http://www.cdkjz.cn/article/gsigio.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220