设置zlevel为-1,则它会在zlevel0的下面一层,设置的整数越大,则它会在越上层的位置。每一个不同的zlevel将产生一个独立的canvas,相同zlevel的组件或图标将在同一个canvas上渲染。zlevel越高越靠顶层,canvas对象增多会消耗更多的内存和性能,并不建议设置过多的zlevel。
下面的例子放置了三个正方形,分别设置其zlevel为-1,0,-2。可以看到不管其添加顺序如何,整数越大的层都会在越上层,实际上生成了三个canvas。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<div class="example-container" style="width:400px;height:400px"></div>
<script type="text/javascript" src="zrender.js"></script>
<script>window.onload = function() {var container = document.getElementsByClassName('example-container')[0];var zr = zrender.init(container);zr.add(new zrender.Rect({shape: {width: 100,height: 100},style: {fill: "#6cb3e9"},position:[150,150],zlevel: -1}));zr.add(new zrender.Rect({shape: {width: 40,height: 40},style: {fill: "#ffd366"},position:[200,200]}));zr.add(new zrender.Rect({shape: {width: 200,height: 200},style: {fill: "#ff9c7a"},position:[100,100],zlevel: -2}));}
</script>
</body>
</html>
zrender.Group使用起来很方便,其API基本上包含了需要常用的一些功能,这里讲一下childOfName方法,返回特定名字的子元素。可以通过name查找到对应元素,可以省去自己遍历查找对应元素的麻烦,下面是使用childOfName的一个示例。
玩探灵笔记时自动退出游戏。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<div class="example-container" style="width:400px;height:400px"></div>
<script type="text/javascript" src="zrender.js"></script>
<script>window.onload = function() {var container = document.getElementsByClassName('example-container')[0];var zr = zrender.init(container);var w = zr.getWidth();var h = zr.getHeight();var elementStyle = {stroke: '#ccc',fill: 'white'};var group = new zrender.Group();for (var i = 0; i < 10; ++i) {var r = 50 * Math.random() + 20;var circle = new zrender.Circle({shape: {cx: 0,cy: 0,r: r},position: [(w * 0.6 - r * 2) * Math.random() + r + w * 0.2,(h * 0.6 - r * 2) * Math.random() + r + h * 0.2],style: elementStyle,name:'cir'+i //设置名称});group.add(circle);}zr.add(group);//通过名称找到元素var myCir=group.childOfName('cir8');myCir.animateTo({style:{fill:'#6cb3e9'}})}
</script>
</body>
</html>
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态