navbar 的 item 用來篩選照片,每一張照片的 class 要先設定好名稱,再用 jQuery 來判斷 class 名稱來顯示。
點擊 navbar item 中的 a 連結後,直接取用 navbar item 名稱來篩選每一張圖片的 class 名稱,這邊用了toLowerCase()把文字轉為小寫、replace把空格轉為-。點擊All Projects會把所有 hidden class 的 li 全部 fadeIn 顯示、並把 hidden class 移除。
如果點擊的是其他的項目則會把全部 li 的陣列用 each 來判斷是不是符合點擊項目的名稱後再去操作hide與fadeIn
程式碼擷取一個 li 範例,li class 可以輸入單個或多個名稱,點擊後篩選就依照是否有該 class 來執行。
// Mouseenter overlay $("ul#gallery li").on("mouseenter", function() { // Get data attritube values var title = $(this).children().data("title"); var desc = $(this).children().data("desc");
// Validation if (desc == null) { desc = "Click To Enlarge "; } if (title == null) { title = ""; }
// Create overlay div $(this).append('<div class="overlay"></div>'); // Get the overlay div var overlay = $(this).children(".overlay");
// Add html to overaly; overlay.html("<h3>" + title + "</h3><p>" + desc + "</p>");
// Fade in overlay overlay.fadeIn(800); });
// Mouseleave overlay $("ul#gallery li").on("mouseleave", function() { // Get the overlay div var overlay = $(this).children(".overlay");