移动页面缩放方法之(二)控制HTML
<!DOCTYPE HTML>
<html lang="zh-cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no,target-densitydpi=device-dpi"/>
<title>无标题文档</title>
<style>
*{
padding:0;
margin:0;
}
div{
width:1000px;
height:500px;
margin:0 auto;
line-height:500px;
font-size:30px;
text-align:center;
color:#fff;
background:red;
}
</style>
</head>
<body>
<div>我是测试的</div>
<script>
;(function(top){
var doc=top.document;
function setStyle(){
for(var name in arguments[0]){
var sName=name.charAt(0).toUpperCase()+name.substring(1);
var sValue=arguments[0][name];
this.style['Webkit'+sName]=sValue;
this.style['Moz'+sName]=sValue;
this.style['Ms'+sName]=sValue;
this.style['O'+sName]=sValue;
this.style[sName]=sValue;
}
}
top.SetScale=function(width){
this.bOk='orientation' in top?true:false;
var resize=this.bOk?'orientationchange':'resize';
this.obj=doc.querySelector('html');
this.obj.style.width=width+'px';
this.viewWidth=top.screen.width;
this.viewHeight=top.screen.height;
this.initWidth=width;
this.scale=1;
this.init()[resize]();
};
SetScale.prototype={
init:function(){
var width=this.bOk?this.viewWidth:this.obj.clientWidth;
this.scale=width/this.initWidth;
setStyle.call(this.obj,{
transform:'scale('+this.scale+')',
transformOrigin:'left top'
});
return this;
},
resize:function(){
top.addEventListener('resize',this.init.bind(this),false);
},
orientationchange:function(){
var _this=this;
top.addEventListener('orientationchange',function(){
var rotate=(top.orientation+90)/90%2;
if(!rotate){
_this.scale=_this.viewHeight/_this.initWidth;
}else{
_this.scale=_this.viewWidth/_this.initWidth;
}
setStyle.call(_this.obj,{
transform:'scale('+_this.scale+')',
transformOrigin:'left top'
});
},false);
}
};
SetScale.prototype.constructor=SetScale;
doc.addEventListener('DOMContentLoaded',function(){
new SetScale(1000);
},false);
})(parent);
</script>
</body>
</html>
移动页面缩放方法之(二)控制HTML的更多相关文章
- 移动页面缩放方法之(一)控制meta法
<!DOCTYPE HTML> <html lang="zh-cn"> <head> <meta http-equiv="Con ...
- 移动页面缩放方法之(三)rem布局
<!DOCTYPE HTML> <html lang="zh-cn"> <head> <meta http-equiv="Con ...
- 关于页面缩放时css错乱的处理方法---之一
这几天遇到一个问题,就是在做网页的时候,页面缩放时,布局就乱了,原来的样子不会跟随缩放的放大或者缩小进行改变,直接导致的后果,就是页面很难看,无法使用 之前虽然写了代码,但是一直没有注意到缩放后页面的 ...
- Spring Security教程之基于方法的权限控制(十二)
目录 1.1 intercept-methods定义方法权限控制 1.2 使用pointcut定义方法权限控制 1.3 使用注解定义方法权限控制 1.3.1 JSR-25 ...
- 详细介绍ASP.NET页面重定向方法
ASP.NET中页面重定向的使用的很频繁,实现方法也有不同,自己也试过几种,现在总结一下. 一.Transfer Execute Redirect重定向方法介绍 1.Server.Transfer方法 ...
- PHP页面跳转到另一个页面的方法
用HTTP头信息重定向到另外一个页面的方法如下: <? if (isset($url)) { Header("HTTP/1.1 303 See Other"); Header ...
- http://localhost/certsrv 错误找不到页面解决方法
http://localhost/certsrv 错误找不到页面解决方法 最近公司需要后台启动安全证书,可安装了“Active Directory证书服务” 后,http://localhost/ce ...
- (实用篇)PHP页面跳转到另一个页面的方法总结
一.用HTTP头信息 也就是用PHP的header函数.PHP里的header函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("C ...
- PHP生成静态页面的方法
在PHP网站开发中为了网站推广和SEO等需要,需要对网站进行全站或局部静态化处理,PHP生成静态HTML页面有多种方法,比如利用PHP模板.缓存 等实现页面静态化,今天就以PHP实例教程形 ...
随机推荐
- bzoj1662: [Usaco2006 Nov]Round Numbers 圆环数
Description 正如你所知,奶牛们没有手指以至于不能玩“石头剪刀布”来任意地决定例如谁先挤奶的顺序.她们甚至也不能通过仍硬币的方式. 所以她们通过"round number" ...
- bzoj3140: [Hnoi2013]消毒
Description 最近在生物实验室工作的小T遇到了大麻烦. 由于实验室最近升级的缘故,他的分格实验皿是一个长方体,其尺寸为a*b*c,a.b.c 均为正整数.为了实验的方便,它被划分为a*b*c ...
- python中对文件、文件夹的操作需要涉及到os模块和shutil模块。
创建文件:1) os.mknod("test.txt") 创建空文件2) open("test.txt",w) 直接打开一个文件,如果文件不存在则创建文件 创建 ...
- TCP/IP 三次握手和四次握手
三次握手建立连接: 第一次握手:客户端发送syn包(seq=x)到服务器,并进入SYN_SEND状态,等待服务器确认: 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己 ...
- xamarin fivechess
网上的五子棋项目是java开发,先转为xamarin,有需要的请下载. FiveChess.7z
- C#后台找不到前台html标签
没关系! 只要他在form表单里 , 咱在标签加上一个 runat="server"就可以在后台cs代码里找到他了
- Oracle问题解决(远程登录失败)
远程机: 安装 Oracle 的计算机: 本地机: 访问远程机 Oracle 的计算机. 一.问题描述 远程机安装 Oracle 成功. 本地机配置 InstantClient 后, PLSql De ...
- js/bat批处理调用谷歌浏览器chrome批量打开网页测试web性能
批处理批量打开网页 其实用java就可以搞定,但是这么一个轻巧的测试,js或者bat批处理去一次性打开几百个网页测试一下页面没必要上java 两者的区别,js的话,只能打开多个浏览器实例,不方便查看效 ...
- Webpack 傻瓜式指南(一)
modules with dependencies webpack module bundler static assetss .js .js .png Webpack傻瓜式指南 n ...
- stm32 smartcard调试--不用st8024
关于stm32 smartcard功能调试,官方提供的例程是配合8024芯片进行控制的.程序可从地址:http://www.pudn.com/downloads420/sourcecode/embed ...