Java禁止网页缩放代码 js禁止网页缩放( 二 )


width- viewport的宽度
height- viewport的高度
initial-scale- 初始的缩放比例
minimum-scale- 允许用户缩放到的最小比例
maximum-scale- 允许用户缩放到的最大比例
user-scalable- 用户是否可以手动缩放
如果要禁止页面缩放,只要把user-scalable 设置成no 就可以
js怎么禁止浏览器窗口缩放?简单Java禁止网页缩放代码的回答是:不能
从用户角度讲,这是他们应有的权利,它属于操作系统中应用软件的一部分,并不属于页面 , Java禁止网页缩放代码你没有办法禁止用户对窗口进行缩放 。
有一个办法可以保证页面总是保持在你想要的尺寸:resizeTo
IE 和 Safari 暂时还都支持在当前页面使用 resizeTo,其它浏览器都已经改为只支持在 window.open 打开的页面上使用 。所以要兼容全部浏览器,你的页面必须使用 window.open 打开,并且在部分浏览器中要设置 width 和 height 属性(否则窗口会在 TAB 中打开) 。
index.html
script type="text/javascript"
/* 或者在适当的情况使用 a onclick 调用 window.open */
window.open("w.html", "", "top=0,left=0,toolbar=1,menubar=1,"
+ "width=" + screen.width + ",height=" + screen.height);
/script
main.html
script type="text/javascript"
window.onresize = function() {
var window_width = window.innerWidth
|| document.documentElement.clientWidth
|| document.body.clientWidth;
if(window_width1000) {
// 部分浏览器需要延迟
setTimeout(function() {
// 窗口最大化
window.resizeTo(screen.width, screen.height);
// 窗口移动至 top=0, left=0
window.moveTo(0, 0);
}, 100);
}
};
/script
注意即使在 window.open 和 window.resizeTo 中使用了 screen.width 和 screen.height,但打开的窗口并不是我们平时看到的最大化 , 窗口离屏幕四周会有一定距离 。
使用这种方法最大的问题就是会令访问者产生反感 , 因为你强迫用户使用指定尺寸的窗口大小 。但这也是现在唯一的方法 。
所以个人还是建议你当窗口过小的时候,mask 掉整个页面,给用户一个提示 , 例如:您的浏览器窗口尺寸过?。?为了正常访问此页面,请调整窗口尺寸 。
android webview怎么禁止缩放要支持缩放,肯定要先支持JavaScript,加如下代码:
//支持JS
WebSettings settings = mWebView.getSettings();
settings.setJavaScriptEnabled(true);123123
重点来了 , 要想支持缩放,要加如下代码支持
//支持屏幕缩放
settings.setSupportZoom(true);
settings.setBuiltInZoomControls(true);
我们怎样去掉它呢,在Android3.0之后实现非常简单,加一句代码就可以了 , 如下代码:
//不显示webview缩放按钮
settings.setDisplayZoomControls(false);
所以说,我们没有必要兼容2.x了,就像iOS开发只兼容到IOS7版本就OK了,但是有的同学又说,我有强迫症 , 我就想兼容到2.x版本,其实解决方案网上都有了,这里用到了Java反射的知识,通过反射来获取私有的属性控件mZoomButtonsController,然后就其setVisibility(View.GONE)隐藏就可以了,下面贴出代码实现:
public void setZoomControlGone(View view){
Class classType;
Field field;
try {
classType = WebView.class;
field = classType.getDeclaredField("mZoomButtonsController");
field.setAccessible(true);
ZoomButtonsController mZoomButtonsController = new ZoomButtonsController(view);
mZoomButtonsController.getZoomControls().setVisibility(View.GONE);
try {
field.set(view, mZoomButtonsController);
} catch (IllegalArgumentException e) {
e.printStackTrace();

推荐阅读