2016-03-03 36 views

回答

3

我會承擔這個問題的緣故你的意思是641px的寬度,但我也留下了innerHeight變量,以防萬一你需要它:

// Closure last-height/width 
var lastX = window.innerWidth 
var lastY = window.innerHeight 

function fooOnResize() { 
    var x = window.innerWidth 
    var y = window.innerHeight 
    if (lastX <= 641 && 641 < x) { 
     $(".foo").removeClass("bar") 
    } 
    lastX = x 
    lastY = y 
} 

window.addEventListener("resize", fooOnResize) 
// Also okay: window.onresize = fooOnResize 

訣竅是基本上保持最後大小的一些閉包變量,然後在調整大小,你可以進行比較。在完成比較和工作後,將當前的x/y存儲爲最後一個,作爲下一個調整大小。

1

嘗試window.onresize事件:

https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onresize

可以使用window.innerHeightwindow.innerWidth得到瀏覽器窗口的當前尺寸:

window.onresize = function() { 
    console.log('height: ' + window.innerHeight); 
    console.log('width: ' + window.innerWidth); 
} 
+0

有什麼辦法可以檢測瀏覽器是否已經從X調整到Y? –

+1

@RalphDavidAbernathy - 不直接,但您可以輕鬆存儲窗口的以前尺寸,並將它們與新尺寸進行比較。 –