Przeglądaj źródła

add ease transition to product list

Tati 9 lat temu
rodzic
commit
b28b5de16d
5 zmienionych plików z 17 dodań i 3 usunięć
  1. 1 1
      client/css/products.css
  2. 5 0
      client/css/styles.css
  3. 1 1
      client/index.html
  4. 4 1
      client/js/app.js
  5. 6 0
      client/js/binders.js

+ 1 - 1
client/css/products.css

@@ -1,7 +1,7 @@
 ul.product-list {
     list-style: none;
     text-align: center;
-    min-height: 50%;
+    min-height: 600px;
 }
 
 ul.product-list li {

+ 5 - 0
client/css/styles.css

@@ -31,6 +31,11 @@
     src: url('../fonts/Angelface.otf');
 }
 
+[rv-cloak] {
+    opacity: 0;
+    transition: opacity 200ms ease;
+}
+
 section[rv-transition] {
     opacity: 0;
     transition: opacity 400ms ease;

+ 1 - 1
client/index.html

@@ -147,7 +147,7 @@
                 </nav>
 
                 <ul class="product-list" rv-show="data.productView.list">
-                    <li rv-each-product="data.products">
+                    <li rv-each-product="data.products" rv-cloak>
                         <div class="product-short-desc">
                             <!--rv-src-strict="product.thumbUrl"-->
                             <img>

+ 4 - 1
client/js/app.js

@@ -57,8 +57,11 @@ function fetchProducts(category) {
 
 function getProducts(category) {
     fetchProducts(category).then(function(xs) {
+        data.products = [];
         data.allProducts[category] = xs;
-        data.products = xs;
+        xs.forEach(function (x) {
+            data.products.push(x);
+        })
     })
 }
 

+ 6 - 0
client/js/binders.js

@@ -27,4 +27,10 @@ rivets.binders['selected-section'] = function (el, sectionState) {
     } else {
         el.classList.remove('selected');
     }
+}
+
+rivets.binders['cloak'] = function (el) {
+    setTimeout(function() {
+        el.style.opacity = 1;
+    }, 200);
 }