C.O*_*.O. 10 javascript jquery
我在包含position:fixed元素的web应用程序中遇到Safari问题.当页面缩小(小于100%)时,事情就会中断,需要通过调用函数来修复.所以我想检测用户的缩放.我刚才发现了这个jQueryPlug:
http://mlntn.com/2008/12/11/javascript-jquery-zoom-event-plugin/
http://mlntn.com/demos/jquery-zoom/
它会检测可能导致页面缩放级别更改的键盘和鼠标事件.很公平.它适用于当前的FF和IE,但不适用于Safari.在当前的WebKit浏览器中,可以做些什么来做同样的事情?
new*_*ron 22
这不是这个问题的直接复制,因为它涉及Mobile Safari,但同样的解决方案将起作用.
放大时,会调整window.innerWidth,但不会调整document.documentElement.clientWidth,因此:
var zoom = document.documentElement.clientWidth / window.innerWidth;
Run Code Online (Sandbox Code Playgroud)
此外,您应该能够使用onresize事件处理程序(或jQuery .resize())来检查:
var zoom = document.documentElement.clientWidth / window.innerWidth;
$(window).resize(function() {
var zoomNew = document.documentElement.clientWidth / window.innerWidth;
if (zoom != zoomNew) {
// zoom has changed
// adjust your fixed element
zoom = zoomNew
}
});
Run Code Online (Sandbox Code Playgroud)