lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4776|回复: 2

关于清空画面的疑问

[复制链接]

1

主题

0

好友

13

积分

士兵

Rank: 1

发表于 2017-10-23 09:20:20 |显示全部楼层
本帖最后由 cheney28 于 2017-10-23 09:23 编辑

老大你好,
  1. //清空背景层
  2. function cleanBg(){
  3.         BGDiv.removeAllChild();        //移除所有子对象
  4.         BGDiv.die();        //移除所有事件监听
  5. }
复制代码
这个清空画面函数里面的removeAllChild()和die()哪一个更需要先执行的?
我本来是先die()的,然后发现在有LListView对象的页面里不能离开页面,会提示ui.js找不到listObj.getItems.length
  1.         console.dir(List001);        //LLLListView
  2.         console.dir(List001._ll_items);                //Array[14]
  3.         console.dir(List001._ll_items.length);                //14
  4.         console.dir(List001.getItems);        //function LListView.getItems()
  5.         console.dir(List001.getItems.length);        //0
  6.         //以下是控制台的唯一一条报错
  7.         //lufylegend.ui-0.14.1.min.js:1 Uncaught TypeError: Cannot read property 'length' of null
  8.         //LListView.die        @        lufylegend.ui-0.14.1.min.js:1
  9.         //p.removeAllChild        @        lufylegend-1.10.1.min.js:11
  10.         //cleanBg        @        main.js:225
  11.         //NavToBag        @        main.js:592
  12.         //MouseEventContainer._dispatchEvent        @        lufylegend-1.10.1.min.js:11
  13.         //MouseEventContainer.dispatchEvent        @        lufylegend-1.10.1.min.js:11
  14.         //MouseEventContainer.dispatchMouseEvent        @        lufylegend-1.10.1.min.js:11
  15.         //LGlobal.mouseEvent        @        lufylegend-1.10.1.min.js:11
  16.         //LGlobal.ll_mouseDown        @        lufylegend-1.10.1.min.js:11
复制代码
然后我试着交换俩函数的位置,先执行removeAllChild(),虽然也读不到length,但是页面可以正常清空。
而且除了有列表的页面之外,好像这俩执行顺序先后对我现在的游戏没有影响,那一般情况下是要把哪一个放前面?
回复

使用道具 举报

37

主题

8

好友

9305

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

发表于 2017-10-23 09:37:31 |显示全部楼层
我的失误了,我在LListView的die中将列表的_ll_items设置了nul,所以你getItems获取到的列表就是null,所以 .length就出错了,你在使用.length之前,判断一下getItems获取到的列表是不是null,然后再使用.length就不会出错了,
另外,这两个函数都执行的时候,谁先谁后,执行的最终结果其实是一样的
不回答与技术和引擎不相关的问题
回复

使用道具 举报

1

主题

0

好友

13

积分

士兵

Rank: 1

发表于 2017-10-23 13:46:16 |显示全部楼层
了解,不影响使用的前提下绕开这个问题就好了。
能正常清空页面就OK
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-3-29 22:00 , Processed in 0.048326 second(s), 24 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部