bbo*_*ien 28 javascript iphone jquery javascript-events
我有一个使用jQuery提交搜索的Web表单.表单本身不会触发提交事件,因为我抓住并删除它(这是一个更大,更复杂的表单的所有部分,我正在使用渐进增强来添加此功能).
在iPhone上,浏览器一旦聚焦,就会自动放大我的搜索输入.在"输入"键盘事件中,搜索是通过javascript执行的,我模糊了输入,它消除了屏幕上的iPhone键盘,但浏览器仍然放大到输入区域.
有没有办法通过javascript以编程方式再次缩小回到初始视口区域?
编辑:搜索执行没有重定向,这通常会在新页面加载时重置视口 - 所有内容都发生在这里的一个页面上.
我成功地使用了以下内容.
$('input, select, textarea').on('focus blur', function(event) {
$('meta[name=viewport]').attr('content', 'width=device-width,initial-scale=1,maximum-scale=' + (event.type == 'blur' ? 10 : 1));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1" />
</head>
<body>
<input id="input" type="text" placeholder="Type here..." />
</body>
Run Code Online (Sandbox Code Playgroud)
您是否需要或希望允许人们进行缩放?如果没有,你有这个元标记在脑海中吗?
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
Run Code Online (Sandbox Code Playgroud)
据我所知,这将在第一个实例中停止缩放问题.
| 归档时间: |
|
| 查看次数: |
24168 次 |
| 最近记录: |