2014-10-27 33 views
0

我有一個腳本JS:jquery的切片寬度腳本

function thoat() { 
    var sples = $(window).width(); 
    if (sples >= 320 && sples <= 480) {$('.projects').slice(0, 9).css('margin', '10px'); 
    } else {$('.projects').slice(3, 6).css('margin', '10px'); 
    } 
}thoat(); 

其當屏幕尺寸順便說一句320和480然後選擇所有元素如果沒有選擇三個從底部。 它看起來像工作很好,但我嘗試一個320px的響應式屏幕測試大小,它不選擇所有元素不明白爲什麼?在320px的東西在裏面寫不行

響應測試網站,不是320px的工作:screenfly

jsfiddle

請告訴我這個問題?用腳本?

回答

0

它實際上工作正常。唯一的問題是你運行你的函數只是在DOM.ready(),但是當你在screenfly上更改分辨率時,它不會導致頁面重新加載,所以DOM.ready()事件不會被觸發,但是$(window).resize()是。所以你可以在你的代碼中加入followingl一行

$(window).on('resize', thoat); 

它的工作原理!

jsfiddle

Screenfly 屏幕只是調整一些移動設備,你會看到結果。

UPD它不會在320px的原因滾動條的工作,它的寬度是一樣知識+,和.width()方法返回window寬度沒有滾動條witdh,所以,你的情況是超出範圍。

+0

它確定但在320px不選擇所有元素?爲什麼?在320和480需要選擇所有但爲什麼不明白? – testers 2014-10-27 16:46:39

+0

@testers在我的答案中看到更新。 – 2014-10-27 17:01:56

+0

這個腳本工作約一個月不知道現在爲什麼不工作在320px然後我怎麼可以使其工作在320px?並感謝你非常有用? – testers 2014-10-27 17:05:47