我提出了一个 Lean Html 5 的 概念 和 标准
提出 Lean Html 5 是因为 Html 可以作为 一个 应用程序 开发 的 标准 和 平台,
应用程序 包括 Web 程序 , 本地程序 , 桌面程序 , 嵌入式程序 , 串口通信 等 。
Lean Html 5 只 原生支持 div, img, input( text ), canvas, iframe 等 这几个 标签, 其它 的 标签 都通过 Javascript 实现 。
这样 Lean Html 5 浏览器 引擎 也可以 分为 内核 和 扩展库 2 层 。
Lean Html 5 可以考虑 给 navigator 对象 增加 mousedown 事件, 因为 window 的 mousedown 事件 在 有多个 frame(iframe) 时, window 的 mousedown 只能接收到 自己 的 mousedown, 接收不到其它 frame(iframe) 的 window 的 mousedown 事件, 这样 写 一些 控件 时 不太方便 。
navigator 对象 的 mousedown 事件 可以接收到 整个浏览器窗口 上的 mousedown 事件, 包括 所有 frame 上的 mousedown 。
还可以考虑 给 HtmlElement 加上 resize 事件, 现在只有 window 有, document 不知道有没有, 但是一般的 HtmlElement 是没有的 。
但是, 写 交互式 的 丰富应用 应该 会 比较会 用到 HtmlElement resize 事件 。
HtmlCore 会 按照 Lean Html 5 的 思路 设计,
有关 HtmlCore, 见《我发起了一个 用 C# 写 的 浏览器 开源项目 HtmlCore》 https://www.cnblogs.com/KSongKing/p/10559978.html 。
我提出了一个 Lean Html 5 的 概念 和 标准的更多相关文章
- 如何用java实现一个p2p种子搜索(1)-概念
前言 说句大实话,网上介绍怎么用java实现p2p种子的搜索这种资料不是特别多,大部分都是python的,用python的话就会简单很多,它里面有很多简单方便的包,libtorrent等等,当然你用这 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
- Mac OS X 背后的故事
Mac OS X 背后的故事 作者: 王越 来源: <程序员> 发布时间: 2013-01-22 10:55 阅读: 25840 次 推荐: 49 原文链接 [收藏] ...
- (五)转载:通用定时器PWM输出
1. TIMER输出PWM基本概念 脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有 ...
- 转载:SMS软件FESWMS模型使用体会
自学了SMS-FESWMS几个月,从其原理到具体应用都已经比较熟悉.感觉这个软件还是有许多不足,这也是需要进一步提高和改进的地方.下面谈谈自己的一些感受和体会. 首先,对一些比较简单的模型,软件的计算 ...
- stm32之PWM
PWM是pulse width modulation的缩写,即脉冲宽度调制.其通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形: 1.PWM是一种对模拟信号电平进行数字编码的方法.通过高分辨率计 ...
- OKR 方法 学习笔记
最近公司兴起了对OKR这个词的讨论,并且听到时总会伴随提到KPI,提到绩效考核.那OKR到底是什么呢?与KPI的区别在哪里?与绩效考核有什么关系?它与我们现在推行的敏捷开发有啥关系呢?因此,就到网上查 ...
- 【转载】 stm32之PWM
发现这位博主的博客被大量的转发,我也转载一篇,谁叫人家写的好呢. 原文地址:http://blog.sina.com.cn/s/blog_49cb42490100s6uh.html 脉冲宽度调制(PW ...
- 开源软件:NoSql数据库 - 图数据库 Cassandra
转载原文:http://www.cnblogs.com/loveis715/p/5299495.html Cassandra简介 在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了 ...
随机推荐
- MyBatis-day2
Properties 属性: 如果属性在不只一个地方进行了配置,那么 MyBatis 将按照下面的顺序来加载: 在 properties 元素体内指定的属性首先被读取. 然后根据 properties ...
- mybatis(3)---传参数的方法
1.传一个参数 //接口方法List<EmpVo> find(int empId); //xml配置 <select resultType="com.ht.mapper.E ...
- goroutine和channel
近期在学习golang的goroutine和channel时候有一些疑惑: 带缓冲的channel和不带缓冲的channel有什么区别? goroutine和主进程的有哪些影响和关系? 多个gorou ...
- php优秀框架codeigniter学习系列——CI_Loader类分析
这是一个加载视图和文件的类. __construct() 设置视图文件的路径,和获取输出缓冲级别. initialize() 该方法只会被CI_Controller调用一次,会调用 $this-> ...
- 2018-CVTE中央研究院-自然语言处理算法工程师-电话初面问题
楼主NLP初学者一名,有幸参加2018年CVTE中央研究院自然语言处理电话面试,问题总结如下: 1.详细的介绍自己的学术论文(感觉他们非常重视这块),会问你网络的具体构造,注意力机制如何计算以及为何你 ...
- 石头的Xcode学习列表
http://www.cnblogs.com/JangoJing/tag/xcode/
- django(channel)到 ubuntu
1.准备工作 删除各app/migrations/下的以数字开头的数据库同步日志文件: 假设你使用的是Pycharm,我们要生成环境包: pip freeze > requirements.tx ...
- C# copy() 与 Clone()区别
copy() 与 Clone()都创建了一个新对象 DataTable dt=new DataTable();DataTable dtcopy=dt.copy(); //copy复制的是值和 ...
- 正则表达式andJS内存空间详细图解
http://www.runoob.com/js/js-regexp.html https://blog.csdn.net/pingfan592/article/details/55189622
- Windows 下Redis的部署 及key 过期事件
window下Redis部署,下载安装完成之后,进入到redis目录: 1.修改配置文件redis.windows.service.conf配置密码 requirepass myRedis (注意在R ...