モバイル デバイスの普及に伴い、モバイル ユーザー エクスペリエンスに重点を置く Web サイトやアプリケーションがますます増えています。中でもスライドして削除するのが一般的な操作方法となっています。この記事ではHTMLとCSSを使ってスライド削除機能を実装する方法を紹介します。
- HTML 構造設計
まず、スライド削除機能を実装する必要があるリストを HTML で設計する必要があります。例:
<ul> <li> <div class="item-content"> <div class="item-title">列表标题</div> <div class="item-delete"> <button>删除</button> </div> </div> </li> </ul>
このうち item-content はリスト項目のメインコンテンツ、 item-delete はスライド削除時に表示される削除ボタンです。スライド時にコンテンツ全体が表示されるように、2 つの要素 item-content と item-delete を固定幅に設定する必要があることに注意してください。
- CSS スタイルのデザイン
次に、CSS スタイルを使用して、各リスト項目の位置、高さ、幅、その他の属性の設定など、リスト項目をデザインする必要があります。 、およびスライド削除ボタンのスタイルを設定します。これを実現するには、次のコードを使用します。
ul { list-style: none; padding: 0; margin: 0; } li { position: relative; height: 50px; line-height: 50px; background: #f0f0f0; overflow: hidden; margin-bottom: 10px; border: 1px solid #dcdcdc; } .item-content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; padding: 0 60px 0 15px; } .item-delete { position: absolute; top: 0; right: 0; bottom: 0; width: 60px; padding-right: 15px; background: #f44336; color: #fff; text-align: center; } .item-delete button { width: 100%; height: 100%; border: none; background: transparent; color: #fff; font-size: 14px; cursor: pointer; }
上記のコードは、リスト項目の固定高さ、境界線、背景色などの基本スタイルを設定し、item-content と 2 つの要素の絶対位置を設定します。アイテムの削除。このうち、item-contentのpadding-rightを60px、item-deleteのwidthを60pxに設定し、削除ボタンの右側に15pxの隙間を空けています。
- スライディング削除を実装するための JavaScript
最後に、JavaScript コードを使用してスライディング削除機能を実装する必要があります。具体的には、次の側面を考慮する必要があります。
- touchstart、touchmove、および touchend イベントをリッスンし、event.touches を使用して画面上のタッチ ポイントの座標を取得し、タッチ ポイントの水平方向の変位を計算します。タッチポイント。
- transform 属性を使用して、スライド効果を実現します。
- スライド距離に応じて削除ボタンの表示要否を判断し、タッチ終了時に削除機能を実装します。
以下は具体的な実装コードです:
var startX, moveX, delWidth = 60; var list = document.getElementsByTagName('li'); for (var i = 0; i < list.length; i++) { list[i]._index = i; list[i].addEventListener('touchstart', function(event) { startX = event.touches[0].clientX; moveX = 0; }); list[i].addEventListener('touchmove', function(event) { moveX = event.touches[0].clientX - startX; if (moveX > 0) { this.style.transform = 'translateX(' + moveX + 'px)'; } }); list[i].addEventListener('touchend', function(event) { if (moveX > delWidth / 2) { this.style.transform = 'translateX(' + delWidth + 'px)'; this.querySelector('.item-delete').addEventListener('click', function(event) { var index = event.currentTarget.parentNode.parentNode._index; console.log('delete item: ' + index); // TODO 实现删除操作 }); } else { this.style.transform = 'translateX(0px)'; } }); }
上記のコードでは、最初に各リスト項目が touchstart、touchmove、および touchend イベントについて個別に監視され、それに基づいて計算されます。タッチポイントとスライド距離、移動量、トランスフォームを使用してスライド効果を実現します。
touchendイベントでは、スライド距離が一定の閾値を超えた場合、リスト項目をdeleteWidth位置に移動し、削除ボタンにclickイベントを追加して削除操作を実装します。
これでスライディング削除機能の実装は完了です。上記の方法を使用すると、HTML および CSS でスライド削除効果を簡単に実装し、モバイル アプリケーションや Web サイトのユーザー エクスペリエンスを最適化し、ユーザー満足度を向上させることができます。
以上が削除するHTMLスライドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

反応の反応は、反応すること:1)即時カクセスソリューションスループラットフループラットフルフルフローアンドGithub;

ReactNativeIsCosenformedeveledementBecauseDevelowSowRiteCodeOdeCodeOdeCodeandedDeployitOnMultPlatforms、ReducingDevelopmentTimeandCosts.ItOfferSnear-NativePerformance、Athrive-community、AndleverageSexistingwebdevelyments.keytomatherinere

ReactのuseState()状態の正しい更新には、州の管理の詳細を理解する必要があります。 1)機能的な更新を使用して、非同期更新を処理します。 2)状態を直接変更しないように、新しい状態オブジェクトまたは配列を作成します。 3)単一の状態オブジェクトを使用して、複雑なフォームを管理します。 4)アンチシェイクテクノロジーを使用して、パフォーマンスを最適化します。これらの方法は、開発者が一般的な問題を回避し、より堅牢なReactアプリケーションを作成するのに役立ちます。

Reactのコンポーネントアーキテクチャにより、モジュール性、再利用性、保守性を通じて、スケーラブルなUI開発を効率的にします。 1)モジュール性により、UIを独立して開発およびテストできるコンポーネントに分解できます。 2)コンポーネントの再利用性は時間を節約し、さまざまなプロジェクトの一貫性を維持します。 3)メンテナビリティにより問題のあるポジショニングと更新が容易になりますが、コンポーネントを過剰な普及と深いネスティングを回避する必要があります。

Reactでは、宣言的なプログラミングは、UIの望ましい状態を記述することにより、UIロジックを簡素化します。 1)UIステータスを定義することにより、ReactはDOMの更新を自動的に処理します。 2)この方法により、コードのメンテナンスがより明確かつ容易になります。 3)しかし、国家管理の複雑さと最適化された再レンダリングに注意を払う必要があります。

tonavigatereAct'somplexEcosystemively、理解を理解し、認識していることを認識していることを認識しているandweakness、およびIntegreatemtoemtoemtoemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemotereconceptate、その後、勾配内で測定する

RactuseSeSeSeSeSeSeSeSpiffictifideidifiedItemsbyprovidingastableidentitytoeeedelement.1)keysallowReactTotTotTotTotTotTotTotTotTotTotTotTotTotTotTotRACKESOUTRE-RENDERINGTHEENTERELIST.2)chookiniqueandstablekeys、avolididingArrayIndices.3)reforceAsificlySificlySiflovedobrovesiondanc

KeysinReactarecrucialforoptimizingTherenderingProcessandDynamicListseffective.tospotandfixkey-relatedissues:1)adduniquekeystolistiTemstoavoidsissusisus、2)useuniqueidideididifiersfromdateadceSofofordiceys、3)


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

WebStorm Mac版
便利なJavaScript開発ツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ホットトピック









