2016-01-20 37 views
0

我嘗試創建一個函數,在這裏我希望能夠得到window width每次當我調整window,然後通過if statemen檢查寬度和使用等功能也..當比991pxwindow width我需要清除代碼爲小於991px但林不知道是否有任何方式使用preventDefault() ..在調整大小「GET寬度」,並設置「FUNCTION」

而對於越來越寬度後調整我用這個代碼:

$(window).resize(function(){ 
    var winresize = $(window).width(); 
}); 

,但我需要有如果聲明寬度值..

我得到這個代碼:

function onwinResize() { 
     var winresize = $(window).width(); 

     if(winresize >= 991) { 

     } 
     else { 
      $('.trends').hide(); 
      $('.trending').click(function() { 
       $('.trending').hide(); 
       $(this).show(); 
       $('.trends').slideDown(); 
       $('#back-btn').show(); 
       $('#search-btn').hide(); 
      }); 

      $('#back-btn').click(function() { 
       $('.trending').slideDown(); 
       $('.trends').slideUp(); 
       $('#back-btn').hide(); 
       $('#search-btn').show(); 
      }); 
     } 
    } 
+0

preventDefault()方法只會停止從冒泡事件。爲什麼你需要preventDefault()? – DinoMyte

+0

@DinoMyte:因爲當我調整窗口(瀏覽器)在991px下的大小,並調整它的功能應該只是爲991px下面仍然存在..我需要這些值默認爲超過991px「桌面」... – liborza

回答

1

定義您的變量winresize爲全局變量。然後,你將能夠閱讀窗口的大小最新在if聲明:

CODEPEN DEMO - 剛剛成立height()

$(document).ready(function() { 

    var winresize = 0; 

    $(window).resize(function() { 
    winresize = $(window).width(); 
    onwinResize(winresize); 
    }); 

}); 

function onwinResize(winresize) { 

    if(winresize >= 991) { 

    } 
    else { 

    } 
} 
+0

我不能那樣做,因爲我會得到空變量不是'resize'函數中的變量..我會收到'undefined' .. – liborza

+0

@LiborZahrádka:在var varresize後加上這行代碼;' '$(window).trigger('resize');'它應該像這樣工作 –

+0

** 1。**如果你在函數'$(document).ready'中設置了變量'winresize',那麼**全局變量**爲相同的功能,這裏是'$(document).ready'函數。 ** 2。**全局變量'var winresize;'你做了什麼沒有任何東西的變量,如果你在'.resize(function)'中調用它,它不是將等於'全局變量'它只是在那個函數裏面.. ** 3。**不真的明白代碼'$(window).trigger(「resize」);' 因爲它沒有任何東西.. – liborza

相關問題