egret结合html标签,egret的WebView实现

#需求 在egret中嵌入网页,类似

egret结合html标签,egret的WebView实现_第1张图片

网上大概有两种思路吧,一种是直接在body里面加入iframe,如:【Egret】里使用iframe标签达到内嵌多个web界面;另一种就是通过模仿htmlinput来做,如egret的WebView实现。具体要什么样子看需求吧。

Egret由两个层组成,简单看一个页面:

id为“canvasDiv的DIV”层是一个canvas,主要用于文字、位图、矢量图等的渲染,id为“StageDelegateDiv”的层是使用HTML原生的输入文本组件,如下图:

输入文本这块有不少坑,比如焦点啥的

最终代码如下:

/**

* WebView

* 适配FIXED_WIDTH、FIXED_HEIGHT、NO_BORDER、SHOW_ALL四种缩放模式

* 暂未考虑屏幕大小改变、屏幕旋转以及单页面多Webplay实例的情形

* Created by yxiao on 2015/9/30.

*/

class WebView extends egret.DisplayObjectContainer {

private _x:number=0;

private _y:number=0;

private _width:number=0;

private _height:number=0;

private _src:string="";

private _scaleMode:string=egret.MainContext.instance.stage.scaleMode;

private _stageW:number;

private _stageH:number;

private _windowW:number;

private _windowH:number;

private _displayH:number;

private _displayW:number;

private _designH:number;

private _designW:number;

private _iframeWrapper:HTMLDivElement=null;

private _iframe:HTMLIFrameElement=null;

/**

* @param src

*/

public constructor(src:string){

你可能感兴趣的:(egret结合html标签)