2017-05-21 20 views
1

我已Google並完成了如何執行此操作的研究,但尚未設法使其工作。我已經聲明瞭一個叫做width的變量。我希望我的JS檢查,如果屏幕的寬度小於660px,那麼寬度應該是140px,否則應該是100px。只有當我旋轉設備「手機」時,變量寬度纔會改變,但它不起作用?我希望變量應該檢查屏幕的寬度,只要我旋轉設備。用JS更改電話輪換的變量

JS

var width = 0; 
    function check() 
    { 

if (window.innerWidth < 660) 
    { 
    width = 140; 
    } 
    else{ 
    width = 100; 
    } 
} 


window.addEventListener("orientationEvent", check); 
document.write(width); 

回答

0

什麼是你想改變的大小...實際屏幕視圖,在D.O.M.特定元素?

乍一看你的代碼,不知道你想改變大小的具體事情,我會說它不是你應該使用的Javascript。你應該在CSS中使用媒體查詢。

如果您試圖爲您的網站創建一個響應級別,我想您可以(理論上)使用一些Javascript,但這是真正的「hackish」而非高效的編碼。它可能有助於減慢您的網站速度,等等。

我會在下面提供一個通用的例子,但有兩點非常重要的事情要注意。它們是:

1)你的HTML文件的「頭」一節中,你應該把下面的代碼:

<meta name="viewport" content="width=device-width, initial-scale=1"/> 

2)其中,下面的代碼提到了「方向」,你應該把任何「風景「或」肖像「,這取決於你的意思是電話的方向。

這將是這個樣子:

@media screen and(max-width: 660px) 
       and(orientation: landscape) { 
        /* In this commented out area between the 2 curly brackets, you should put the css code of the elements you want to have resize */ 
} 

我希望幫助。

+0

感謝的人,但事情是變量我想改變我的JS是幻燈片。所以當屏幕小於660px時,每次點擊時幻燈片應該左移-140px。否則它應該移動-100px。 –

0

你可以使用窗口大小調整事件:

的Jquery:

$(window).resize(yourFunction); 

平原:

window.onresize = function(){yourFunction};; 

window.addEventListener("resize", yourFunction);