[]Laya定位和事件绑定
我将Laya.init(500, 300)放置到DIV中,并且固定了DIV的位置(position: relative)。从而导致,我new了一个Text,再给Text绑定事件后,点击Text无法触发事件。
没有找到相关结果
已邀请:
要回复问题请先登录
没有找到相关结果
要回复问题请先登录
3 个回复
layaBox2018
赞同来自:
由于Laya.init初始化成功后,其位置是(0, 0),从而导致其绑定的事件位置是基于(0, 0)的,猜测事件的位置已被定位。
而后将Laya.init的返回值Canvas标签 append进DIV,由于该DIV是做了页面定位,所以就强行的将Canvas放到了DIV中,而在后面异步创建的图片对象,虽然图片位置正常,但是其事件的位置没有变化。
以上是个人分析的结果,求大神指正并解答,谢谢。
layaBox2018
赞同来自:
依据论坛里小伙伴们的问题,得出解决方案:
由于事件的位置是基于Canvas的,因此我们想得到事件的准确位置,则需要对Canvas进行初始化定位。
Laya.Render._mainCanvas.source.style.left = "190px";
Laya.Render._mainCanvas.source.style.top = "90px";
因为我们的页面布局都是使用DIV+CSS布局的,而这种方法需要使用JS来动态计算Canvas尺寸、坐标,感觉对使用DIV+CSS布局的侵略性比较大,有没有更好的解决方案呢?ヾ(。 ̄□ ̄)ツ゜゜゜
Monica - 知识达人
赞同来自: