如您所知,在Internet中,当页面上的任何元素都被调整大小时,就会触发 window.resize事件。通过给页面元素分配/更改其高度或样式属性来调整页面元素的大小,通过简单地向其添加一个子元素,或者其他什么--即使元素调整大小不影响视口本身的尺寸--并不重要。
在我的应用程序中,这导致了一个令人讨厌的递归,因为在我的window.resize处理程序中,我正在调整一些元素的大小,这反过来又会重新触发window.resize等等,这只是IE中的一个问题。
有什么方法可以防止在IE中触发window.resize以响应页面上的元素被调整大小?
我还应该提到,我正在使用jQuery。
发布于 2013-12-02 12:19:37
你可以试试这个:
构造器:
this.clientWidth = null;
this.clientHeight = null;的一些功能:
var clientWidth = window.innerWidth || document.documentElement.clientWidth; 
var clientHeight = window.innerHeight || document.documentElement.clientHeight;
if (clientWidth != this.clientWidth || clientHeight != this.clientHeight ) {
    this.clientWidth = clientWidth;
    this.clientHeight = clientHeight;
    ... YOUR CODE ...
} 对于Internet Explorer、Chrome、Firefox、Opera和Safari:
window.innerHeight - the inner height of the browser window
window.innerWidth - the inner width of the browser window对于8、7、6、5:
document.documentElement.clientHeight
document.documentElement.clientWidth
    or
document.body.clientHeight
document.body.clientWidthhttps://stackoverflow.com/questions/1852751
复制相似问题