シンプルなjQuery + CSSを使用してカスタムタグタイトルツールチップを作成します

シンプルなjQuery + CSSを使用してカスタムタグタイトルツールチップを作成します
導入

シンプルな jQuery + CSS を使用して、ブラウザのデフォルトの動作を置き換えるカスタムの a タグ タイトル プロンプトを作成します。図に示すように:



Javascriptコード

コードをコピー
コードは次のとおりです。

</pre><pre name="code" class="javascript">$(function() {
$("a[タイトル]").each(function() {
var a = $(これ);
var title = a.attr('title');
if (title == undefined || title == "") return;
a.data('タイトル', タイトル)
.removeAttr('タイトル')
.ホバー(
関数 () {
var オフセット = a.offset();
$("<div id=\"anchortitlecontainer\"></div>").appendTo($("body")).html(title).css({ 上部: offset.top + a.outerHeight() + 10、 左: offset.left + a.outerWidth() + 1 }).fadeIn(function () {
var pop = $(これ);
setTimeout(関数() { pop.remove(); }, pop.text().length*80);
});
},
関数() { $("#anchortitlecontainer").remove(); }
);
});
});

jQuery を参照することを忘れないでください。

コードでは、setTimeout(function () { pop.remove(); }, pop.text().length*80); は、タイトルの長さに基づいてプロンプト時間を計算して、短すぎるタイトルが長くなりすぎたり、長すぎるタイトルが短すぎたりすることを防ぎます。

CSSコード

コードをコピー
コードは次のとおりです。

#アンカータイトルコンテナ {
位置: 絶対;
zインデックス: 5999;
境界線: 実線 1px #315B6C;
パディング: 5px;
色: #315B6C;
背景: なし 繰り返しスクロール 0 0 #FFFFFF;
境界線の半径: 5px;
表示: なし;
}
#アンカータイトルコンテナ:前{
位置: 絶対;
下部: 自動;
左: -1px;
上: -15px;
境界線の色: 透明 透明 透明 #315B6C;
境界線のスタイル: solid;
境界線の幅: 15px;
コンテンツ: "";
表示: ブロック;
幅: 0;
}
#アンカータイトルコンテナ:後{
位置: 絶対;
下部: 自動;
左: 0px;
上: -13px;
境界線の色: 透明 透明 透明 #FFFFFF;
境界線のスタイル: solid;
境界線の幅: 15px;
コンテンツ: "";
表示: ブロック;
幅: 0;
}

いくつかの CSS3 機能を使用し、画像の使用は避けてください。

私は CSS の専門家ではないので、このスタイルを思いつくのに時間がかかりました。誰かに使ってもらえれば光栄です。 :)

<<:  MySQLインデックスマージの使い方

>>:  CSS を使用して固定ナビゲーションと左右スライドを備えたスクロール バーを作成する方法

推薦する

HTML テーブル マークアップ チュートリアル (29): セルのライト境界線の色属性 BORDERCOLORLIGHT

セルでは、明るい境界線の色を個別に定義できます。 > 基本構文<TD ボーダーカラーライ...

Dockerがコンテナを起動するたびに、IPとホストが指定した操作が実行されます。

序文Dockerを使ってHadoopクラスタを起動するたびに、ネットワークカードの再バインド、IPの...

JavaScriptにおける評価戦略の詳細な説明

目次それを覆う栗パラメータの受け渡し値渡し共同配送要約する拡張機能 - 遅延評価私は最近、JavaS...

DockerでのinfluxDB分散時系列データベースのインストールと関連操作について簡単に説明します。

influxDB の紹介influxDB は分散型時系列データベースです。 cAdvisor はリ...

HTML+CSS ボックスモデルの例 (円、半円など) 「border-radius」はシンプルで使いやすい

多くの友人は、フロントエンドを学習するときに、ボックス モデルがデフォルトで正方形であることに気付き...

Mysqlは日付範囲の抽出方法を指定します

データベースを操作する過程では、いくつかの指標を日付別にまとめたり、一定期間内の合計金額をカウントし...

CSS BEM 記述標準の詳細な説明

BEM は、Web 開発に対するコンポーネントベースのアプローチです。ユーザー インターフェイスを独...

JSのアンカーリンクをクリックするとスムーズにスクロールし、自由にトップ位置に調整できます。

アンカーリンクをクリックするとスムーズにスクロールし、自由にトップ位置に調整できます。 1. アンカ...

Linux仮想メモリについての簡単な説明

目次起源仮想メモリページングとページテーブルメモリのアドレス指定と割り当て関数プロセスメモリ管理デー...

フォームの「Enter」、「Submit」、「Enter != Submit」を削除する方法

「Enter != Submit」問題を実装するには、通常、「ボタンの種類」と「入力ボックスの数」か...

JavaScript Three.js でテキストを作成する最初の経験

目次効果テキストの作成を開始するまずフォントローダーを作成するフォントライブラリを読み込むテキストジ...

ブラウザがクロージャをどのように認識するかについて詳しく説明します

目次序文クロージャの紹介メモリのゴミを識別する方法クロージャのメモリ表現結論序文クロージャは、Jav...

JavaScript は setTimeout を使用してカウントダウン効果を実現します

JavaScript ネイティブ コードの記述能力を高め、setTimeout() の使用を強化する...

Dockerとイメージの操作方法

ミラーを探すDocker Hubのウェブサイトからイメージを検索できます。Docker Hubのウェ...

Linux の vsftpd サービス構成の簡単な分析 (匿名、ユーザー、仮想ユーザー)

vsftpd の概要vsftpd は「very secure FTP daemon」の略称で、セキ...