Hangi Portföy şablonunu beğendin? Portföylü HTML5 Html stüdyo şablonunda harika portföy

İlk olarak, yeni bir HTML5 belgesini işaretleyelim. Başlık bölümünde sayfa stilini etkinleştirin. JQuery kitaplığı, Quicksand eklentisi ve dosyamız script.js kapanış gövde etiketinden önce eklenecek:

index.html

Portföyüm

HTML5 başlık öğesi h1 başlığımızı içerir (logo gibi şekillendirilmiştir). Bölüm öğesi, portföy öğelerinin sıralanmamış bir listesini içerir (diğer listeler jQuery kodu tarafından eklenir) / Yeşil çubuk olarak stilize edilmiş nav öğesi, bir içerik filtresi görevi görür.

Sırasız liste #stage portföy öğelerimizi içerir. Her öğenin, virgülle ayrılmış bir dizi etiketi tanımlayan bir veri özelliği vardır. Daha sonra jQuery kodunda, liste boyunca döneriz, etiketler yazarız ve yeşil menü çubuğunda seçilebilen kategoriler oluştururuz.

  • Öğeler listesine başka işler koyabilir ve diğer etiketleri kullanabilirsiniz.

    jQuery

    Quicksand eklentisi iki sırasız listeyi karşılaştırır, içlerinde aynı liyi bulur ve sipariş sürecini canlandırır. Öğreticinin bu bölümü için jQuery komut dosyası, #stage listesindeki portföy öğeleri arasında dolaşır ve bulduğu her etiket için yeni (gizli) sırasız listeler oluşturur. Bu listeler daha sonra Quicksand eklentisini çalıştırmak için kullanılacaktır.

    Sayfayı yükledikten sonra etiketleri algılamak için bir döngü çalıştırıyoruz.

    script.js - Bölüm 1

    $ (belge) .ready (function () (var öğeler \u003d $ ("# aşama li"), itemsByTags \u003d (); // Tüm li öğelerinde döngü yapın: items.each (function (i) (var elem \u003d $ ( this), tags \u003d elem.data ("tags"). split (","); // data-id niteliğini ekleyin. Quicksand eklentisi için gerekli: elem.attr ("data-id", i); $ .each ( etiketler, fonksiyon (anahtar, değer) (// Fazla boşlukları kaldırın: değer \u003d $ .trim (değer); if (! (itemsByTags'deki değer)) (// öğeler için boş bir dizi oluşturun: itemsByTags \u003d;) // Her öğe bir diziye etiket ile eklenir: itemsByTags.push (elem);));));

    Her etiket, itemsByTags nesnesine bir dizi olarak eklenir. Bu nedenle, itemsByTags ["Web Tasarımı"], "Web Tasarımı" olarak etiketlenen tüm öğelerin bir dizisini içerecektir. Bu nesneyi, Quicksand eklentisi için sayfada sırasız gizli bir liste oluşturmak için kullanıyoruz.

    Yardımcı işlevler oluşturalım

    script.js - Bölüm 2

    İşlev createList (text, items) (// Menü düğmesinin metnini ve // \u200b\u200bbir öğe dizisi alan yardımcı işlev li // Boş bir sırasız liste oluşturun var ul \u003d $ ("