Bootstrap ソース コード分析ツールチップ、popover_html/css_WEB-ITnose
1. ツールチップ (プロンプトボックス)
ソースコードファイル:
Tooltip.jsTooltip.scss
実装原理:
2. 上、左、下、右のいずれかのツールチップの位置を計算します
3. 次に、計算された位置の値に基づいて座標値を計算します
4.座標値をツールチップに適用します
ソースコード分析:
2: domA に domB が含まれるかどうかを判断します。要素
3. offset.setOffset メソッドが適用され、渡されます。 offset の値を設定するときに丸めることができないため、 using パラメーターが欠落しています。 4. $viewport: tooltipr のコンテナー要素を表示します。関数は、上、左、下、右、幅、高さ、スクロールなどの要素の位置座標に関連する情報を取得します。
5.1. getBoundingClientRect メソッドは共有されますが、このメソッドは幅と高さをプラグインします。 IE8
5.2. 本体の場合、幅と高さがウィンドウにリセットされます
5.3. ソースコードは次のとおりです:
$element = $element || this.$element //如果没有传入参数,则以$element(触发tooltip事件的元素)为准 var el = $element[0] var isBody = el.tagName == 'BODY' var elRect = el.getBoundingClientRect() if (elRect.width == null) { // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093 elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top }) } var elOffset = isBody ? { top: 0, left: 0 } : $element.offset() var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : nullreturn $.extend({}, elRect, scroll, outerDims, elOffset)
6. 幅を使用してツールヒントの座標値を計算します。 6.1. ボトムを使用する場合、トップは位置決め要素 (pos) の上部 + 位置決め要素 (pos) の高さです。位置決め要素の幅 (pos) / 2 - ツールチップ要素の幅 / 2
6.2. top が の場合、top は位置決め要素 (pos) の上部のツールチップ要素です
6.2.2 . Left は、位置決めされた要素の左 (pos) – 位置決めされた要素の幅 (pos)/2 – ツールチップ要素の幅 /2
6.3.1 の場合、top は位置決めされた要素の上部になります。 element (pos) – 位置決め要素の高さ (pos)/2 – ツールチップ要素の高さ/26.3.2. Left は位置決め要素の左側です (pos) – ツールチップ要素の幅
6.4 . 右
6.4.1. 上は位置決め要素 (pos) - 位置決め要素の高さ (pos)/2 - ツールチップ要素の高さ/2
6.4.2. 左は位置決め要素 (pos) の左です。位置決め要素の幅 (pos)
6.5. 小さな三角形の位置、通常は要素の 50% の位置ですが、ツールチップが左、上、右、下で隠れている場合は、位置を指定する必要があります。再計算して調整しました。メソッド名は次のとおりです: getViewportAdjustedDelta
6.5.1. まず、オーバーフローの幅または高さを計算します
6.5.2. 次に、arrowDelta の値、非表示の値 * 2 – ツールチップの幅 + ツールチップの幅を計算します
6.5.3.上または左のパーセンテージの値
Popover (ポップアップ ボックス)
ソース コード ファイル:
Popover.js
Popover.scss
実装原則

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

Y軸位置Webアノテーション機能の適応アルゴリズムこの記事では、単語文書と同様の注釈関数、特に注釈間の間隔を扱う方法を実装する方法を探ります...

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する

HTML、CSS、およびJavaScriptは、Web開発の3つの柱です。 1。HTMLは、Webページ構造を定義し、などなどのタグを使用します。2。CSSは、色、フォントサイズなどのセレクターと属性を使用してWebページスタイルを制御します。

画像をクリックした後、散乱と周囲の画像を拡大する効果を実現するには、多くのWebデザインがインタラクティブな効果を実現する必要があります。特定の画像をクリックして周囲を作成してください...
