首页 > 网站研发 > 谈谈Axure事件中的行为执行顺序

谈谈Axure事件中的行为执行顺序

2010年6月29日 蛋王 发表评论 阅读评论

最近发现,有不少同学对Axure事件(Events)行为(Actions)执行顺序,还不是很清楚。常常发生的事情是,兴高采烈写了一个复杂得让人吐血的交互,一执行,tmd和设想的完全不一样!这事,一不能怪社会,二不能归咎于rp,三不能借口说软件的版本太低。那这到底是为什么呢?

让我们结合个例子来讲这件事。

axure原型 

上图中,按钮 交互1、交互2、交互3和交互4 分别加了onclick事件,作用于“我是007”处的动态面板(标签为"007”)。4个onclick事件触发的行为详情如下:

axure事件

结合这两张图,你能不能马上判断出按这4个按钮后,“007”会怎么样移动?如果不能或不完全能,请继续往下看。

 

行为的执行顺序,总结起来四句话:

1、单一场景中,按顺序执行行为;

2、无逻辑判断的多场景中,需手动选择场景,并执行选中场景中的行为;

3、有逻辑关系的场景,只执行自上而下第一个满足逻辑条件的场景下的行为;

4、相互独立的场景,同时执行所有满足条件的场景下的行为。

1、单一场景中,按顺序执行行为

[交互3]为例,点击交互3这个按钮后,“007”将向下移动10px->等待500ms->向下移动20px->等待1000ms->向下移动30px,结束。

2、无逻辑判断的多场景中,需手动选择场景,并执行选中场景中的行为

[交互4]为例,点击交互4这个按钮后,将弹出场景选择框,选择某场景后,执行该场景下的所有行为。比如选择case1,则“007”将向下移动10px,结束。

 

3、有逻辑关系的场景,只执行自上而下第一个满足条件的场景下的行为;

[交互2]为例,case1,case2,case3是典型的“if-else if”关系。在默认情况下,会执行case1中的行为后结束。

如果有人变态点,在页面载入时设置了一个不为空的变量,那第一个场景的条件就不能满足。自上而下找第二个场景,case2,显然符合条件,执行行为,结束。

 

4、相互独立的场景,同时执行所有满足条件的场景下的行为

[交互1]为例,case1、case2、case3都是带if的case,相互独立。如果条件都满足,将同时执行case1,case2,case3中的行为。

这是最容易搞错的一种情况!很多人以为这时候,效果和[交互3]中的相同,其实不是。请记住,是同时执行!将[交互1]行为分解:

1)按下交互1按钮,case1中执行move 007 by (0,10)后结束。case2中的wait 500ms,case3中的wait 1000ms同时开始执行;

2)500ms时,case2中,结束500ms等待,执行move 007 by (0,20)后结束。case3继续执行wait行为

3)1000ms时,case3结束1000ms等待,执行move 007 by (0,30)后结束。至此,所有行为执行完毕。

这样一来,最终的效果是:“007”将向下移动10px->等待500ms->向下移动20px->等待500ms->向下移动30px,结束。

 

我要谈的就这些,如果还有不明白的,可以下载本案例原型再研究研究。

最后说一句,我不提倡用Axure做非常复杂的交互,但我建议你了解axure的所有功能。

分享家:Addthis中国
  1. 2010年6月29日22:02 | #1

    学习了,看来还是比较好理解的
    交互一像是switch case语句里少了break的效果
    请教蛋王,什么情况下会做原型呢

  2. 2010年6月29日23:31 | #2

    有Axure经验欢迎到 http://www.axure.org 分享。

  3. 2010年6月30日13:21 | #3

    额……第二幅图应该是电路板的漫画版吧。。 :mrgreen:

  4. 2010年6月30日16:23 | #4

    N久没更新了啊现在开始专研产品交互了??

  5. 2010年7月2日17:34 | #5

    这个研究有点深了

  6. 2010年7月4日10:46 | #6

    只想问一下你的字体和段落是怎么实现这样的,我的修改不好。

  7. 2010年7月4日16:50 | #7

    很久没有来看你,来就看到一个写技术问题的。我还是喜欢看生活的。

  8. 2010年7月5日09:29 | #8

    看着很复杂
    呵呵。

  9. 2010年7月5日14:58 | #9

    蛋王好久没跟新了哦 8)

  10. 2010年7月5日16:40 | #10

    蛋王太厉害了,一出来就搞篇专业的!

  11. 2010年7月5日17:01 | #11

    这个也太专业了点

  12. 2010年7月5日19:11 | #12

    看完了,送你两个字吧:不懂

  13. 2010年7月5日23:59 | #13

    搞编程得

  14. 2010年7月6日16:45 | #14

    博主专业性的东西很强吧!

  15. 2010年7月7日02:31 | #15

    这个问题我也没怎么看懂,看来你比我更懒,更新比较慢

  16. 2010年7月7日09:21 | #16

    Axsure真的挺好用,产品原型必备

    蛋王 回复:

    @mars,
    知音哪。。

  17. 2010年7月7日16:17 | #17

    额,看不懂啊!

  18. 2010年7月8日09:19 | #18

    乐铺这次又搞活动了,呵呵。
    上次我收到的是阳光罐子,免费的。
    七夕快到了,可以免费给你爱人送份礼物哈
    详情请看:
    http://www.lepu.com/events/2010/77/6686

  19. 2010年7月11日21:44 | #19

    不明真相的围观,话说你的表情组和我的一样哎 :mrgreen: :mrgreen:

  20. 2010年7月12日10:03 | #20

    :wink: 不是太懂诶……

  21. 2010年7月12日16:07 | #21

    路过,学习了

  22. 2010年7月13日15:19 | #22

    8-O 8-O 8-O

  23. 2010年7月14日20:04 | #23

    你终于冒泡了.
    我来晚了!

  24. 2010年7月20日15:26 | #24

    太专业了

  25. 2010年7月22日09:34 | #25

    我不懂,但是来踩个脚印

  26. 2010年7月22日21:38 | #26

    快快快更新!

  27. 2010年7月23日16:05 | #27

    不明真相的围观群众路过了

  28. 2010年7月24日01:16 | #28

    博主是一个有才人,支持一下,学习了

  29. 2010年8月3日14:52 | #29

    该更新了,博主很忙吧

  30. 2010年8月3日16:43 | #30

    我来过,百度来的,囧

  31. 2010年8月4日14:08 | #31

    看的一头雾水啊~

  32. 2010年8月6日18:44 | #32

    这种复杂的话题就不用拿出来分享了吧,我等智商比较低等 :?:

  33. 2010年8月7日20:42 | #33

    研究的不错,不过貌似实际用处不是很大。。

  34. 2010年8月9日02:57 | #34

    看了几遍,没看懂。。 :roll:

  35. 2010年8月9日08:23 | #35

    没看懂,什么高科技。
    恭喜你,pr4.

  36. 2010年8月10日23:49 | #36

    反正我不太懂这个,有点高深
    我也更新了,有空过去看看给点意见?

  37. 2010年8月19日10:42 | #37

    这个技术含量有点高了。支持下

  38. 2010年8月23日16:36 | #38

    博主家里高技术含量的文章很多,可惜我是外行,还是想看看你写的生活小记什么的

  39. 2010年8月25日10:18 | #39

    有点看不懂,技术含量太高了。

  40. 2010年8月25日10:28 | #40

    比较有技术含量,学习了

  41. 2010年8月27日10:05 | #41

    我还是先回去了解清楚axure的所有功能再来学习吧 :mrgreen:

  42. 2010年8月27日14:34 | #42

    代码做的很强大啊 赞赞

  43. 2010年9月1日14:37 | #43

    技术含量太高,看不明白。

  1. 本文目前尚无任何 trackbacks 和 pingbacks.
= 15 - 5 (免费测一下智商)
Please leave these two fields as-is:
:wink: :-| :-x :twisted: :) 8-O :( :roll: :-P :oops: :-o :mrgreen: :lol: :idea: :-D :evil: :cry: 8) :arrow: :-? :?: :!: