今回は、ライブブロードキャストプラットフォームのナビゲーションを作成するためのjquery+css3について説明します。ライブブロードキャストプラットフォームのナビゲーションを作成するためにjquery+css3を使用する際に注意すべき点は次のとおりです。見てみましょう。
実装原理以下のソースコードをご覧ください
<p class="ph-nav" data-pdt-block="pheader-n"> <p class="ph-nav_shadow" style="left: 0px; width: 62px;"></p> <ul> <li class="ph-nav_item ph-nav_item--current"> <a href="/" rel="external nofollow" > 首页 </a> </li> <li class="ph-nav_item"> <a href="/all" rel="external nofollow" > 全部 </a> </li> ... </ul> </p>
緑のボックスに対応するコードはクラスph-nav_shadowのpです。
jqueryを使用してマスクレイヤー(.ph-nav_shadow)の左と幅の値を変更し、css3アニメーション効果を追加して緑色のボックスのアニメーションを実現します。
jqueryを呼び出してliタグクラスを追加および削除し、テキストの色を変更します。 (.ph-nav_item--current)。
具体的な実装
HTMLコードの書き方 <header>
<p class="w">
<p class="header_logo l"><img src="img/logo.png" alt=""></p>
<p class="header_nav r">
<p class="header_nav_shadow"></p>
<ul>
<li class="header_nav_li-hover"><a href="">首页</a></li>
<li><a href="">智能家居</a></li>
<li><a href="">案例展示</a></li>
<li><a href="">致创能源</a></li>
<li><a href="">答疑解惑</a></li>
<li><a href="">合作加盟</a></li>
</ul>
</p>
</p>
</header>
.header_nav{
width: 592px;
height: 50px;
position: relative;
}
.header_nav_shadow{
position: absolute;
top: 0;
left: 0;
bottom: 0;
width: 72px;
background: #F29400;
transition: all ease-in-out .3s;
z-index: 1;
}
.header_nav ul li{
display: block;
float: left;
overflow: hidden;
height: 50px;
line-height: 50px;
transition: all ease-in-out .3s;
position: relative;
z-index: 2;
}
.header_nav_li-hover a{
color: #fff;
}
.header_nav ul li a{
display: block;
padding: 0 20px;
height: 50px;
line-height: 50px;
transition: all ease-in-out .3s;
}
$(document).ready(function() {
$(".header_nav ul li").hover(function() {
var change = getLiData($(this));
$(".header_nav_shadow").css('left',change[0]).width(change[1]);
$(".header_nav ul").children("li:first-child").removeClass("header_nav_li-hover");
$(this).addClass("header_nav_li-hover");
}, function() {
$(".header_nav_shadow").css('left',0).width('72');
$(this).removeClass("header_nav_li-hover");
$(".header_nav ul").children("li:first-child").addClass("header_nav_li-hover");
});
});
// 根据this li 获取需要改变的长度和偏移量
function getLiData(li){
var left = 0;
for(let i=0;i<li.index();i++){
left+=$(".header_nav ul li:eq("+i+")").width();
}
var change=[left,li.width()];
return change;
}
推奨読書:
jQuery で li タグと属性を追加する方法 スクロール バーが下にスライドしたときに、より多くのコンテンツを自動的に読み込む方法 マウス応答の透明度グラデーション効果の実装以上がjquery+css3でライブブロードキャストプラットフォームのナビゲーションを作成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。