代码之家  ›  专栏  ›  技术社区  ›  Chetan S

使用javascript/css设置IE“光学缩放”功能

  •  2
  • Chetan S  · 技术社区  · 15 年前

    我维护的网站已经被严格设计成使用像素来显示字体大小、尺寸、绝对位置等。

    现在有一个功能请求添加字体大小调整用户。虽然我知道如果不使用相对尺寸从头开始重新设计站点是不可能的,但我发现该站点与IE7/IE8缩放功能(ctrl+&ctrl-)非常配合。

    问题是,有没有一种“建议”的方法,即在默认的缩放级别(比如说,125%)打开这个站点,而不需要用户自己进行缩放?

    该站点仅与IE 7+一起使用。

    2 回复  |  直到 11 年前
        1
  •  3
  •   Aaron Fischer    15 年前

    如果这是您的用户选择,请将它留给他们的浏览器最成熟的浏览器我们放大他们的页面呈现(如7&8、Opera、Firefox、Chrome 2.0、Safari?)。此外,根据您的用户来自哪个系统(屏幕分辨率),用户将决定其缩放选择。不幸的是,每一个浏览器处理记住你的缩放设置有点不同,例如chrome记住每个站点,而ie是每个新选项卡/窗口的全局设置。

        2
  •  1
  •   yckart Matthew Crumley    11 年前

    如果你真的想做你想做的,我当然想做 建议您尝试如下操作:

    $(function(){
        var ratio = 1;
        $(document.body).css("zoom", 1.25); // zoom the page on DOMReady
    
        // bring back a 'normalized' behavior keyevent zooming
        $(document).keydown(function(e){
            if(e.ctrlKey && {187:1, 189:1, 96:1}[e.which]) {
                switch(e.which){
                    case 187: // ctrl +
                        ratio += 0.25;
                        break;
    
                    case 189: // ctrl -
                        ratio -= 0.25;
                        break;
    
                    case 96: // ctrl 0
                        ratio = 1;
                }
    
                $(this.body).css("zoom", ratio);
    
                e.preventDefault();
            }
        });
    });