使用jquery / javascript禁用缩放浏览器?

时间:2012-12-14 06:08:33

标签: javascript jquery zoom

我想阻止用户无论如何使用缩放网站内容。例如。在浏览器选项中按ctrl + scroll / select。有没有办法在浏览器中使用jquert / js禁用缩放功能?感谢

6 个答案:

答案 0 :(得分:5)

如果您只是想阻止用户缩放以修复表单焦点问题,例如在iPhone上,当表单输入放大到字段中,然后在完成时不缩小,则可以使用javascript更改视口元标记:

    var viewportmeta = document.querySelector('meta[name="viewport"]');
    viewportmeta.content = 'user-scalable=NO, width=device-width, initial-scale=1.0'

这可以防止iPhone上的用户可扩展操作放大。然后,您可以直接处理任何可访问性问题,例如添加自己的缩放控件或完成后重置viewportmeta。

答案 1 :(得分:5)

您可以通过Ctrl +或Ctrl-或使用Ctrl键+鼠标滚轮按此代码向上或向下禁用放大浏览器。

$(document).keydown(function(event) {
if (event.ctrlKey==true && (event.which == '61' || event.which == '107' || event.which == '173' || event.which == '109'  || event.which == '187'  || event.which == '189'  ) ) {
        event.preventDefault();
     }
    // 107 Num Key  +
    // 109 Num Key  -
    // 173 Min Key  hyphen/underscor Hey
    // 61 Plus key  +/= key
});

$(window).bind('mousewheel DOMMouseScroll', function (event) {
       if (event.ctrlKey == true) {
       event.preventDefault();
       }
});

在这里查看演示http://jsfiddle.net/VijayDhanvai/4m3z3knd/

答案 2 :(得分:2)

可能晚了,但你可以用jQuery做到这一点:

$(document).ready(function(){
$(document).keydown(function(event) {
    if (event.ctrlKey==true && (event.which == '107' || event.which == '109')) {
        alert('disabling zooming ! ');
        event.preventDefault();
     }
});
})

答案 3 :(得分:1)

没有。出于可访问性原因,您无法执行此操作。

答案 4 :(得分:1)

试试这个Jquery热键,你可以禁用缩放这个: https://github.com/tzuryby/jquery.hotkeys

答案 5 :(得分:-1)

omniauth_providers