HTML5+学习笔记1-------边看代码边研究中
document.addEventListener('touchstart',function(){
return false;
},true);
touchstart当手指触摸屏幕时候触发,即使已经有一个手指放在屏幕上也会触发。
document.oncontextmenu=function(){
return false;
};
oncontextmenu取消鼠标右键
var _domReady=false;
document.addEventListener('DOMContentLoaded',function(){
_domReady=true;
compatibleAdjust();
},false);
domready事件,类似jq的$(document).ready()
var _adjust=false;
function compatibleAdjust(){
if(_adjust||!window.plus||!_domReady){
return;
}
_adjust=true;
// iOS平台使用div的滚动条
if('iOS'==plus.os.name){
document.getElementById('content').className='scontent';
}
// 预创建二级窗口
// preateWebviews();
// 关闭启动界面
setTimeout(function(){
plus.navigator.closeSplashscreen();
},500);
}
// 兼容性样式调整
var _openw=null;
function clicked(id,a,s){
if(_openw){return;}
a||(a=as);
_openw=preate[id];
if(_openw){
_openw.showded=true;
_openw.show(a,null,function(){
_openw=null;//避免快速点击打开多个页面
});
}else{
// var wa=plus.nativeUI.showWaiting();
_openw=plus.webview.create(id,id,{scrollIndicator:'none',scalable:false,popGesture:'hide'},{preate:true});
preate[id]=_openw;
_openw.addEventListener('loaded',function(){//叶面加载完成后才显示
// setTimeout(function(){//延后显示可避免低端机上动画时白屏
// wa.close();
_openw.showded=true;
s||_openw.show(a,null,function(){
_openw=null;//避免快速点击打开多个页面
});
s&&(_openw=null);//避免s模式下变量无法重置
// },10);
},false);
_openw.addEventListener('close',function(){//页面关闭后可再次打开
_openw=null;
preate[id]&&(preate[id]=null);//兼容窗口的关闭
},false);
}
}
//处理点击事件
var preate={};
function preateWebviews(){
preateWebivew('plus/webview.html');
var plist=document.getElementById('plist').children;
// 由于启动是预创建过多Webview窗口会消耗较长的时间,所以这里限制仅创建5个
for( var i=0;i<plist.length&&i<2;i++){
var id=plist[i].id;
id&&(id.length>0)&&preateWebivew(id);
}
}
function preateWebivew(id){
if(!preate[id]){
var w=plus.webview.create(id,id,{scrollIndicator:'none',scalable:false,popGesture:'hide'},{preate:true});
preate[id]=w;
w.addEventListener('close',function(){//页面关闭后可再次打开
_openw=null;
preate[id]&&(preate[id]=null);//兼容窗口的关闭
},false);
}
}
// 清除预创建页面(仅)
function preateClear(){
for(var p in preate){
var w=preate[p];
if(w&&w.showded&&!w.isVisible()){
w.close();
preate[p]=null;
}
}
}
通过 HTML5 开发移动 App 时,会发现 HTML5 很多能力不具备。为弥补 HTML5 能力 的不足,在 W3C 中国的指导下成立了 www.HTML5Plus.org组织,推出 HTML5+规范。
HTML5+扩展了 JavaScript 对象 plus,使得 js 可以调用各种浏览器无法实现或实现不佳的系统能力,设备能力如摄像头、陀螺仪、文件系统等,业务能力如上传下载、二维码、地图、支付、语音输入、消息推送等。
HTML5+学习笔记1-------边看代码边研究中的更多相关文章
- HTML5学习笔记(二十):JavaScript中的标准对象
这里提到的标准对象指ECMAScript中定义的对象,无论JavaScript运行那种环境(浏览器.Node.js)下都存在的对象. typeof 在JavaScript的世界里,一切都是对象. 但是 ...
- HTML5学习笔记之表格标签
HTML5学习笔记之表格标签 其他HTML5相关文章 HTML5学习笔记之HTML5基本介绍 HTML5学习笔记之基础标签 HTML5学习笔记之表格标签 HTML5学习笔记之表单标签 HTML5学习笔 ...
- Html5学习笔记1 元素 标签 属性
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- html5学习笔记一
HTML5学习笔记 <video>标记:定义视频,Ogg.MPEG4.WebM三种格式 <video src=”movie.ogg” controls=”controls”> ...
- VSTO学习笔记(八)向 Word 2010 中写入表结构
原文:VSTO学习笔记(八)向 Word 2010 中写入表结构 前几天公司在做CMMI 3级认证,需要提交一系列的Word文档,其中有一种文档要求添加公司几个系统的数据库中的表结构.我临时接到了这项 ...
- VSTO 学习笔记(六)在 Excel 2010中使用RDLC报表
原文:VSTO 学习笔记(六)在 Excel 2010中使用RDLC报表 Excel具有强大的图表显示.分析功能,这点毋庸置疑,但是如果将常规MIS系统中的数据以报表的形式在Excel中显示,却并不那 ...
- VSTO学习笔记(四)从SharePoint 2010中下载文件
原文:VSTO学习笔记(四)从SharePoint 2010中下载文件 上一次我们开发了一个简单的64位COM加载项,虽然功能很简单,但是包括了开发一个64位COM加载项的大部分过程.本次我们来给CO ...
- HTML5学习笔记(一):HTML简介
Web前端涵盖的内容较多且杂,主要由3个部分组成:HTML标记语言.CSS样式语言和JavaScript脚本语言组成,而下面我们将先学习最新的标记语言HTML5. <!DOCTYPE>标记 ...
- CSS3秘笈第三版涵盖HTML5学习笔记6~8章
第二部分----CSS实用技术 第6章,文本格式化 指定备用字体: font-family:Arial,Helvetica,sans-serif; 当访问者没有安装第一种字体时,浏览器会在列表中继续往 ...
随机推荐
- 【BNUOJ19500】 Matrix Decompressing
https://www.bnuoj.com/v3/problem_show.php?pid=19500 (题目链接) 题意 给出一个R行C列的正整数矩阵,设前${A_i}$项为其前i行所有元素之和,$ ...
- 动态库在线更新导致coredump的问题
最近我们数据中心主机上的第三方管理工具升级,导致数据中心系统coredump,看起来不相关的事情,到底是怎么回事了? 首先,打开core文件看看: core.45259 is truncated: e ...
- mongoDB在centos7上的安装
1,下载安装包 下载MongoDB的安装文件 地址:https://www.mongodb.org/downloads#production 选择Linux 64-bit legacy 版本,下载到目 ...
- requst方法简单用一下
使用getParametar() 获取表单提交过来的文本框的值 setAttribute(String name, Object o)存储此请求中的属性.在请求之间重置属性.此方法常常与 Reques ...
- 第三次个人作业——软件产品评测(K米Android端)
第一部分 调研,评测 1.K米简介 K米点歌是一款免费的社交K歌手机应用,其手机点歌功能主要在KTV.夜总会,酒吧等K歌场所中使用,当前提供iPhone版本及安卓版本下载使用. 2.评测 2.1.上手 ...
- HTML5学习总结-07 WebStorage 本地存储
一 Storage sessionStorage session临时回话,从页面打开到页面关闭的时间段 窗口的临时存储,页面关闭,本地存储消失 localStorage 永久存储(可以手动删除数据)S ...
- React Native 开发之 (05) flexbox布局
一 flexbox布局 1 flex布局 flexbox是ReactNative 应用开发中必不可少的内容,也是最常用的内容. 传统的页面布局是基于盒子模型,依赖定位属性,流动属性和显示属性来解决. ...
- wpf 线程
一.线程概述:[引用MSDN] 通常,WPF 应用程序从两个线程开始:一个用于处理呈现,一个用于管理 UI.呈现线程有效地隐藏在后台运行,而 UI 线程则接收输入.处理事件.绘制屏幕以及运行应用程序代 ...
- [转载]将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,解决办法
eclipse 代码中文注释乱码 求解决 将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,主要原因就是别人的IDE编码格式和自己的Eclips ...
- 表单提交set集合问题
提交时使用数组接收,遍历将数组添加到set集合 用户表user 字段id,name,set<xk> xks=new HashSet<xk>(); 选课表xk 字段id,name ...