我看过很多关于如何在浏览器中获取当前缩放系数的对话,但我还没有找到为什么这个代码段在Firefox中运行,而不是在Chrome中。
public class MyComposite extends Composite
{
public MyComposite()
{
HTMLPanel panel = new HTMLPanel("<applet>...</applet>");
panel.addDomHandler(new MouseWheelHandler()
{
@Override
public void onMouseWheel(MouseWheelEvent event)
{
event.stopPropagation();
event.preventDefault();
}
}, MouseWheelEvent.getType());
initWidget(panel);
}
}
在两种浏览器中,当我在包含applet的div内滚动时,滚动不会传播到父级(这很好)。当我在div之外滚动时,窗口会滚动(这也很好)。
但是当我执行 Ctrl + MouseWheel 时,在Firefox中,处理程序捕获了zoom事件而没有传播,而在Chrome中,似乎没有调用处理程序,然后传播事件。我也希望停止Chrome中的传播。
Chrome中是否存在错误或我做错了什么?
答案 0 :(得分:0)
后期单挑:这似乎是Chrome中的一个错误。几年前我提交了a report,但似乎并不是他们的优先事项。如果您偶然发现这篇文章并且您也想要这个“功能”,请在该报告上留言,也许它会加速这些事情......