好吧,現在..我真的不知道如何給這個標題。這是我的問題。我正在嘗試製作一個頁面,其中正文定義了另一個div的寬度a.k.a baser
。當css浮動時,Javascript檢查空格:左邊
我有一個jQuery腳本,它檢測窗口的寬度,並在以後給出一個類body
。例如當窗口的寬度大約爲900px - body
將被賦予一個類.col_6
。
每張卡的寬度爲150px,但是當他們有額外的類large
時,它們的寬度將爲300px。現在的問題是,根據HTML中的cards
的順序,如果應將card.large
放置在只有150px寬的空間中,則會有一些空白空間。然後卡片將自動跳到下一行並在上一行留下150px的開放空間。
我想知道的是 - 我可以在腳本中添加什麼,以便稍後可以選擇放置在後面的150px寬卡片,並將其移動到空白處或使用javascript製作的div填充空白區域(爲其他目的)..
我希望你能夠通過閱讀這個找出我的問題..我做了一個jsfiddle,顯示我的代碼和問題。閱讀小提琴時,您可以嘗試調整窗口的大小。它會告訴你如何有時看到一個空的空間。
這裏是我的JavaScript/jQuery的,如果它可以幫助你任何方式..
$(document).ready(function() {
winResize(window.innerWidth);
});
$(window).resize(function() {
winResize(window.innerWidth);
// Room for more functions
});
function winResize(w) {
resizeBaser(w);
// Room for more functions
}
function resizeBaser(w) {
var index = Math.min(10, Math.floor(w/150));
if (index > 0) {
$('body').alterClass('col_*', 'col_' + index);
}
}
你會反對使用像石工一樣的圖書館嗎? http://masonry.desandro.com/ –
它真的很好..我可能會考慮使用它,如果沒有別的出現..我真的很討厭第三方jquery插件,因爲他們混淆了我的CSS,他們讓網站變得更重加載.. – Dimser
我也曾經這樣認爲。也許你可以提取你需要的邏輯。 –