TweenMax.ticker : Object
//添加监听
TweenMax.ticker.addEventListener("tick", myFunction);
function myFunction() {
//核心引擎update时处理这个事件
}
//移除监听
TweenMax.ticker.removeEventListener("tick", myFunction);
目前主流浏览器都由requestAnimationFrame事件驱动,通常,requestAnimationFrame事件每秒发生约60次,但这取决于浏览器并且还取决于系统性能。如果requestAnimationFrame 不支持,则ticker会自动回退到使用setTimeout()这种所有浏览器都支持的常规模式。
//关闭requestAnimationFrame,切换ticker使用setTimeout()来替换
TweenMax.ticker.useRAF(false);]
//帧速调整为30
TweenMax.ticker.fps(30);
如果你确实想将帧速率调整到100(不推荐),你可以先把requestAnimationFrame关闭TweenMax.ticker.useRAF(false)转为setTimeout(),再设定TweenMax.ticker.fps(100)即可。
addEventListener(type, callback, scope, useParam, priority)
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | String | 是 | 监听类型,一般是"tick" |
callback | Function | 是 | 事件触发的函数 |
scope | Object | 否 | 限定函数的范围,一般是"this" |
useParam | Boolean | 否 | 如果设置为true每次触发时将产生事件对象,事件对象包含type(一般是"tick")和target,默认是false以提高性能 |
priority | Integer | 否 | 函数调用的优先级,高级的比低级的优先处理 |
//添加请求事件对象参数event的侦听器,将范围绑定到当前范围(this),并将优先级设置为1,以便优先处理
TweenMax.ticker.addEventListener("tick", myFunction, this, true, 1);
function myFunction(event) {
//核心引擎update时处理这个事件
}
//移除监听
TweenMax.ticker.removeEventListener("tick", myFunction);
.box {
width:50px;
height:50px;
border-radius:6px;
margin-top:4px;
display:inline-block
}
.green{
background-color:#6fb936;
}
new TweenMax('.box', 3, {
x: 500,
});
TweenMax.ticker.fps(3);//设置帧速率为3,每秒钟触发三次tick监听事件
TweenMax.ticker.addEventListener("tick", myFunction,this,true,1);
function myFunction(event) {
console.log(event);//useParam设置为true时产生事件对象,如果设置为false则event为undefined但会提高性能
}
转载原创文章请注明:文章转载自:TweenMax中文网 [https://www.tweenmax.com.cn]
本文地址:https://www.tweenmax.com.cn/api/tweenmax/TweenMax.ticker