### API的应用:使用自定义回调函数
* * * * *
Mugeda提供完善的交互行为功能,能够无需代码即可方便的添加丰富的交互行为,例如对动画的控制(播放、暂停、跳转等),提交表单,播放视频,上传图片等。
在一些特殊情况下,用户可能希望能够编写自定义函数来处理交互逻辑。比如,在一些小游戏内容中,用户可能希望能够实现较为复杂的自定义逻辑来满足游戏的需要。这时候,就可以考虑通过自定义的回调函数来进行处理。本教程将会说明如何定义自己的回调函数来添加自己的代码。
使用自定义的回调函数的基本流程是在创作的动画内容中为一个指定的元素添加名为“回调函数”的行为,并为行为指定一种触发方式。然后,就可以在代码编辑器中添加回调函数的定义了。
下面举例说明一下。在下面的例子中,我们为一个矩形添加一个点击后移动一个圆形的回调函数。首先生成一个包含有圆形和矩形的一个内容,并将圆形命名为"circle"。如下图所示:
![](https://box.kancloud.cn/757a4dafd26255301bedd6e6dd637170_752x617.png)
然后选中矩形,并点击矩形右下角的添加行为按钮。
![](https://box.kancloud.cn/7c5388caadc668ccf670096984ee51e2_651x403.png)
在出现的“编辑行为”对话框中,选择“回调函数”条目。在右侧的“触发条件”中,默认的触发条件即为“点击”。也可以用其它合适的触发条件,比如“向左滑动”,“摇一摇”等。
![](https://box.kancloud.cn/0c7a7e345fb5f8a5852797c4870d98c6_915x643.png)
点击操作中的编辑按钮,编辑回调函数的参数。
![](https://box.kancloud.cn/386e3942c203d4be880e81de2f9aea5e_963x544.png)
下面就可以开始编写回调函数的代码了。首先打开代码窗口。
![](https://box.kancloud.cn/f8eada52580141d04d49feeb54653b03_833x145.png)
在代码窗口中输入自定的回调函数实现。下面这段代码的含义是,在舞台上寻找一个叫做"circle"的对象,并把它移动到x=100的位置。
window.moveObject = function (){
// 获取名称为name的元素对象
var target = mugeda.scene.getObjectByName(name);
if(target){
// 修改获取的元素的位置
target.x = 100;
}
}
![](https://box.kancloud.cn/408b80657693b673aa7f193d2dbbb525_613x247.png)
回调函数的定义方式为:
window.functionName = function(object, param1, param2){}
注意:
1) 目前回调函数需要定义在window的全局空间。我们今后会取消这个约束用更加规范的方式来定义回调函数。
2) 回调函数目前携带3个参数:第1个参数是行为触发的API对象,在上面这个例子中,即为矩形的API对象。除此以外,回调函数允许用户指定两个参数,即第2个和第3个参数param1和param2。这两个参数可以在编辑回调函数属性的时候指定。
在最简单直接的场景下,用户只需要指定一个回调函数名称,并在代码窗口中提供该函数的定义即可。
- 阅读须知
- 一、Mugeda快速入门
- 平台介绍
- 快速入门
- 添加预置动画
- 制作翻页动画
- 学会使用Mugeda模板
- 作品创建前必读
- H5作品相关设置
- 手机屏幕适配方法
- 图片、声音及视频处理
- 二、界面与舞台
- 界面与舞台简介
- 舞台缩放和物体缩放功能
- 翻页的相关设置
- 关键帧和页面的命名
- 加载的相关设置
- 物体属性设置
- 元件界面介绍
- 三、素材处理及媒体使用
- 上传图片
- 文本/文本段落
- 插入网页
- 幻灯片
- 上传视频和声音
- 绘制素材
- 云字体
- 曲线图表
- 建组
- 全景功能
- 粘贴第三方文字和图片
- 常用编辑操作
- 导入PSD及注意事项
- 声音和视频的压缩
- 四、动画类型
- 时间轴和图层
- 选择工具
- Mugeda动画类型
- 分页/加载页
- 标尺和辅助线的使用
- 复制帧/图层
- 五、交互行为
- 行为添加以及触发事件
- 帧的行为
- 页的行为
- 播放元件片段
- 改变元素属性
- 改变图片
- 设置定时器
- 手机功能
- 跳转链接
- 六、控件使用
- 陀螺仪
- 定时器
- 随机数
- 擦玻璃
- 点赞
- 绘画板
- 七、微信功能
- 微信头像/微信昵称
- 定制图片
- 录制声音
- 分享信息
- 八、表单
- 自定义表单
- 默认表单
- 定制文字
- 九、关联绑定及逻辑判断
- 舞台动画关联
- 元件动画关联
- 属性关联
- 自动关联
- 公式关联
- 条件判断
- 逻辑表达式判断
- 十、Mugeda API
- API的应用:在动画中添加代码
- API的应用:Mugeda API的整体结构
- API的应用:Mugeda对象
- API的应用:scene对象
- API的应用:aObject对象
- API的应用:工具API
- API的应用:获取Mugeda后台数据
- API的应用:使用自定义回调函数
- API的应用:将Mugeda部署在第三方服务器
- 十一、Mugeda新功能
- 连线功能
- 抽奖组件
- 声音控制更新功能一览
- 附录1:常见问题集
- 如何压缩图片、声音和视频?
- 为什么导入H5里的视频无法播放?
- Mugeda里的模板如何使用?
- 如何实现H5里可以定制文字和图片的功能?
- H5作品的文档信息设置?
- 我想让一个物体不断循环动,怎么实现?
- 如何复制帧/图层?
- 为什么无法导入PSD?
- 逻辑表达式要怎么写?
- 为什么我的背景音乐无法播放?
- 为什么我的背景音乐只在一页中播放?
- 为什么打开内容时,会提示素材缺失?
- 为什么我的内容发布后还是会有橙色的广告条?
- 为什么我做的H5打不开了,说是涉及违规内容被举报?