一:判斷對象是否已經被添加到顯示列表上
1.類是否被加載到舞台:egret.Evetn.ADD_TO_STAGE 2.判斷對象是否被添加到父容器里:father.contains(child):Boolean
3.this.stage!=null (this是判斷的對象類)
二:egret調用原生js實現復制功能
//str:復制的內容
public setTextToClipboard(str: string) { var input = document.createElement("input"); input.value = str;
input.readOnly = true; //在ios上必須加上 document.body.appendChild(input); input.select(); input.setSelectionRange(0, input.value.length), document.execCommand('Copy'); document.body.removeChild(input); // window.alert("復制成功");
EffectUtils.showTips("房間信息已經復制成功,請粘貼發送給好友"); }
三:egret使用 egret.localStorage出現的問題
什么是localStorage
在HTML5中,新加入了一個localStorage特性,這個特性主要是用來作為本地存儲來使用的,解決了cookie存儲空間不足的問題(cookie中每條cookie的存儲空間為4k),localStorage中一般瀏覽器支持的是5M大小,這個在不同的瀏覽器中localStorage會有所不同。
localStorage的優勢
1、localStorage拓展了cookie的4K限制
2、localStorage會可以將第一次請求的數據直接存儲到本地,這個相當於一個5M大小的針對於前端頁面的數據庫,相比於cookie可以節約帶寬,但是這個卻是只有在高版本的瀏覽器中才支持的
3、localStorage與sessionStorage的唯一一點區別就是localStorage屬於永久性存儲,而sessionStorage屬於當會話結束的時候,sessionStorage中的鍵值對會被清空
localStorage的使用
localStorage.getItem(key):獲取指定key本地存儲的值
localStorage.setItem(key,value):將value存儲到key字段
存:egret.localStorage.setItem('test','string'); 取:egret.localStorage.getItem('test'); 刪:egret.localStorage.removeItem('test'); 清空所有:egret.localStorage.clear(); 存:egret.localStorage.setItem('test', JSON.stringify(data)); 取:var data = JSON.parse(<string>egret.localStorage.getItem('test')); 刪:egret.localStorage.removeItem('test'); 清空所有:egret.localStorage.clear();
egret.localStorage在使用setItem存儲數據后,瀏覽器會一直記住上一次存儲的數據,當要改動的時候需要先清除 removeItem對應的字段,或者清空所有 clear();在用setItem存儲。
四:判斷是不是微信上瀏覽
//是不是微信瀏覽
export function isWeiXin(): boolean { var ua = window.navigator.userAgent.toLowerCase(); var microStr = "" + ua.match(/MicroMessenger/i); if(microStr == "null") { return false; } else if(microStr == "micromessenger") { return true; } }
五:選中一組按鈕其中一個,並且需要處理選中和非選中的區別
let index: number = this.btnList.indexOf(e.target); for(let i = 0; i < this.btnList.length; i++) { if (i == index) { this.btnList[I].y = 100; }else{ this.btnList[I].y = 0; } }
六:egret 判斷是native還是web端
egret.Capabilities.runtimeType ?
web:egret.RuntimeType.WEB
native: egret.RuntimeType.NATIVE
移動設備打開:egret.Capabilities.isMobile或者 window.innerHeight =? window.innerWidth
