【问题标题】:Blocking access to certain function阻止访问某些功能
【发布时间】:2012-05-31 03:23:44
【问题描述】:

在我的页面上我有两个按钮 -

<input type="button" value="Fit Window" onclick="FitWindow()">
<input type="button" value="Actual Size" onclick="ActualSize()">

function FitWindow()
{
   $("body").css("zoom",iZoomValue*100+"%"); 
}
function ActualSize()
{
   $("body").css("zoom","1"); 
}

最初会发生一个大图像被放大(使用 CSS)以适应窗口。如果用户想查看实际尺寸,他可以点击实际尺寸按钮。我也捕捉到了 resize 事件,所以如果用户调整浏览器窗口的大小,图像将根据浏览器窗口的高度和宽度放大。

$(window).bind('resize', function () {
   FitWindow();
});

它在其他浏览器上运行良好,但是,在 IE 中,当用户单击按钮时,它以某种方式检测到调整大小事件并跳转到 FitWindow() 函数(我猜是由于 IE 在处理调整大小事件时的行为)。我正在寻找的是是否可以检测到按钮事件并避免调用调整大小函数?

【问题讨论】:

  • Actual Size 不是有效标识符,因为它包含空格。
  • 能否提供FitWindow()和Actual Size()的代码
  • 我建议在两个按钮上都放一个 id
  • @Lukx 我把这两个函数的代码都放在那里了
  • 看看over here。也许那里的东西可以帮助某人创建解决方案。它包含有关 IE 调整大小问题的信息。

标签: javascript jquery resize


【解决方案1】:

在resize事件中,查找$("body").css("zoom") != 1,例如:

$(window).bind('resize', function () {
   if ($("body").css("zoom") != 1)
      FitWindow();
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-13
    • 2013-12-26
    • 1970-01-01
    • 2020-10-24
    • 1970-01-01
    • 1970-01-01
    • 2021-09-18
    相关资源
    最近更新 更多