この記事では、Baidu News Navigation Barの効果を実現するための具体的なJSコードを紹介します。具体的な内容は次のとおりです。 私は最近 Web フロントエンドを学習しており、js を使用して Baidu News ナビゲーション バーの効果を簡単に実装しました。マウスをオプションの上に移動すると、赤い背景のブロックが現在のオプションの上にスライドします。オプションをクリックすると、固定された赤い背景のブロックが現在のオプションに移動し、現在のオプションが選択されていることを示します。さっそくコードは以下のとおりです 体 <div class="box"> <!-- 2 つの赤い背景ブロック --> <!--マウスに合わせて移動する背景ブロック--> <div id="移動"></div> <!--マウスをクリックすると背景ブロックがどこかに固定されます--> <div id="固定"></div> <a href="#">ホーム</a> <a href="#">国内</a> <a href="#">国際</a> 軍隊 <a href="#">財務</a> <a href="#">エンターテインメント</a> <a href="#">スポーツ</a> <a href="#">インターネット</a> <a href="#">テクノロジー</a> <a href="#">ゲーム</a> <a href="#">女性</a> <a href="#">車</a> <a href="#">プロパティ</a> </div> CSS部分 *{ マージン: 0; パディング: 0; } 。箱{ 上:100ピクセル; 幅: 790ピクセル; 高さ: 30px; フォントサイズ: 0; 位置: 相対的; マージン: 0 自動; 背景色: #01204f; } { 表示: インラインブロック; 位置: 相対的; 幅: 60ピクセル; 高さ: 30px; 行の高さ: 30px; 色: 白; フォントサイズ: 16px; テキスト装飾: なし; テキスト配置: 中央; 遷移: すべて 0.6 秒; } #動く{ 位置: 絶対; 背景色: 赤; 上: 0px; 左: 0px; 幅: 60ピクセル; 高さ: 30px; 遷移: すべて 0.6 秒; } #修理済み{ 位置: 絶対; 背景色: 赤; 上: 0px; 左: 0px; 幅: 60ピクセル; 高さ: 30px; } js部分 window.onload = 関数(){ let move = document.getElementById("move");//スライドする背景ブロック let fixed = document.getElementById("fixed");//背景ブロックをどこかに固定 let aList = document.getElementsByTagName("a");//タグリスト let left = move.offsetLeft + "px";//スライドする背景ブロックの初期位置 //すべての a タグを、move in、move out、およびクリック イベントにバインドします for (let i = 0; i < aList.length; i++) { aList[i].onmouseover = 関数 () { // マウスが特定の a タグ内に移動すると、スライドする背景ブロックが現在の a タグの位置にスライドします。move.style.left = aList[i].offsetLeft + "px"; } aList[i].onmouseout = 関数 () { // マウスがラベル a から出ると、スライディング背景ブロックは初期位置に戻ります。move.style.left = left; } aList[i].onclick = 関数 () { // 特定の a タグがクリックされると、固定背景ブロックが現在の a タグの位置に移動します。fixed.style.left = aList[i].offsetLeft + "px"; // スライディング背景ブロックの初期位置をラベルの現在の位置に更新します。a left = aList[i].offsetLeft + "px"; } } } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Docker プライマリ ネットワーク ポート マッピング構成
>>: 訪問者にあなたのウェブサイトを覚えてもらうための3つの便利なコード
目次Viteプロジェクトビルドの最適化他のやっとこれは前回の記事の補足です。設定プロジェクトで遭遇し...
文書タイプDoctype は、指示を解析するためにどのバージョンの HTML を使用するかをブラウザ...
概要今日は主に、NGINX を Web サーバーとして設定する方法を共有します。内容は次のとおりです...
1. flex-direction: (要素の配置方向) ※ flex-direction:row ...
まずケースを見てみましょう。vue+swiper を使用して実装します。スライドの高さが異なる場合、...
目次TomcatをインストールするTomcat 圧縮パッケージをダウンロードTomcatには3つの主...
序文この記事では主にMySQLのカスタム関数とストアドプロシージャに関する関連コンテンツを紹介し、皆...
1. mysqlの圧縮パッケージを/usr/localフォルダに解凍し、名前をmysqlに変更します...
この記事では、権限の問題により MySQL 構成ファイル my.cnf を起動できない場合の関連する...
序文この記事では、div の幅を 100% に設定し、親要素を超えてパディングまたはマージンを設定す...
目次1. 準備2. 展開プロセス3. アクセステストHalo は、ブログに慣れている学生に追加のオプ...
勉強や仕事で FTP サーバーを頻繁に使用する場合は、起動時に自動的に起動するように設定できます。設...
イメージを構築するイメージを構築するには、主に 2 つの方法があります。実行中のコンテナをイメージに...
HTML のインライン要素とブロックレベル要素の違い:標準的なドキュメント フローでは、ブロック ...
目次序文1. セレンとは何ですか? 2. 使用手順1. ライブラリをインポートする2. テストコード...