2016-11-20 3 views
0

this websiteで、バッジセクションまでスクロールすると、「ロックされた」ロックされたバッジがあります。状態に応じて画像をフェードアウトして並べ替えます

問題:

  1. 私は、ロックされたバッジが衰退することができます。 (ホバー効果のように、色あせた画像が表示されます)

  2. ロックされていないバッジを最後に最初に表示し、ロックされたバッジにすることはできますか?

ロックとアンロックセクションに関連するCSSやJS:サイト全体の

$.each($('.Portfolio-box'), function() { 
 
    var count = $(this).children('.has-badge').attr('data-count'); 
 
    if (count > 0) { 
 
    $(this).children('ul.locked').hide(); 
 
    $(this).children('ul.unlocked').show(); 
 
    } else { 
 
    $(this).children('ul.locked').show(); 
 
    $(this).children('ul.unlocked').hide(); 
 
    } 
 
});
.unlocked li:before { 
 
    content: '\2713'; 
 
    display: inline-block; 
 
    color: green; 
 
    margin-left: -65px; 
 
    padding: 0 9px 0 0; 
 
} 
 
.unlocked li { 
 
    list-style-type: none; 
 
    font-size: 1.5em; 
 
    margin: 1px; 
 
    font-weight: bold; 
 
} 
 
.locked li:before { 
 
    content: '\274c'; 
 
    display: inline-block; 
 
    color: red; 
 
    margin-left: -65px; 
 
    padding: 0 9px 0 0; 
 
} 
 
.locked li { 
 
    list-style-type: none; 
 
    font-size: 1.5em; 
 
    margin: 1px; 
 
    font-weight: bold; 
 
}

フィドルリンク:https://jsfiddle.net/dkjz1z4k/1/

答えて

1

1.Can私が作りますロックされたバッジは退色した。ホバー効果のように、色あせた画像が表示されます)

現在のステータスクラスを要素のコンテナに追加することをお勧めします。

.locked-badge img { 
 
    opacity: 0.7; 
 
} 
 

 
.locked-badge .badge-img { 
 
    opacity: 0.7;  
 
}
<div class="Portfolio-box locked-badge"> 
 
    <img src="#" class="badge-img"> 
 
</div>

それはCSSに設計されたすべての要素の魔女にクラスを与えるために、常に良いでしょう:あなたのケースでは、このようなものである可能性があります。それはあなたの将来の多くの時間を節約し、いくつかの問題を防ぐ。

2.ロックされていないバッジが最初に表示され、最後にロックされたバッジが表示されるようにすることができます。

Sort JavaScript object by keyを確認してください。もう1つの方法はlodash orderBy methodです。

+0

お試しいただきありがとうございます。画像に不透明度を与えたりクラスを与えることはできません。バッジの右上に表示されるバッジの数が「0」の場合 - バッジは'0'より大きい場合はロックされています。これは常に変化しています。したがって、ポイント数が '0'にロックされている場合、バッジの画像は色あせする必要があります。 – jane

+0

画像は静的ではありません。「ロックされているか、ロックされていません。バッジの右上のカウント値に従って、基本的にロックまたはロック解除されます。 – jane

+0

私はこれが動的クラスだと理解します。カウント値が変更されるたびに、マイルストーンが達成されたかどうかをJavaScriptで確認し、それに応じてHTMLのロック/ロック解除されたクラスを変更する必要があります。 – ArMikael

関連する問題