jQuery UI の Tooltip で入力欄の真下に吹き出し風ツールチップを表示

jQuery UI の Tooltip で、入力欄の真下に吹き出し型ツールチップを表示する方法。

実装例(サンプル)

実装例(サンプル)の動作について

「サンプル入力欄: 」の右横のテキスト入力欄にカーソルを合わせるか、「サンプル入力欄: 」のテキストをクリックするなどしてテキスト入力欄をフォーカスすると、テキスト入力欄の真下に「ツールチップのサンプル」という内容の吹き出し風ツールチップを表示する。

実装例(サンプル)のソースコード

読み込み

パスは、それぞれ、アップロードした場所を指定する。

<link rel="stylesheet" href="jquery-ui.css">
<script type="text/javascript" src="jquery-1.9.1.js"></script>
<script type="text/javascript" src="ui/1.10.2/jquery-ui.js"></script>

JavaScript

<script>
jQuery( function() {
    jQuery( "#sample" ).tooltip( {
        position: {
            my: "center top",
            at: "center bottom+10",
            using: function( position, feedback ) {
                jQuery( this ).css( position );
                jQuery( "<div>" )
                    .addClass( "arrow" )
                    .addClass( feedback.vertical )
                    .addClass( feedback.horizontal )
                    .appendTo( this );
            }
        }
    } );
} );
</script>

CSS

<style>
<!--
#sample {
    padding: 1em;
}
#sample label {
    color: #444444;
}
.ui-tooltip,
.arrow:after {
    background: black;
    border: 2px solid white;
}
.ui-tooltip {
    padding: 10px 20px;
    color: white;
    border-radius: 20px;
    font: bold 14px "Helvetica Neue", Sans-Serif;
    text-transform: uppercase;
    box-shadow: 0 0 7px black;
}
.arrow {
    width: 70px;
    height: 16px;
    overflow: hidden;
    position: absolute;
    left: 50%;
    margin-left: -35px;
    bottom: -16px;
}
.arrow.top {
    top: -16px;
    bottom: auto;
}
.arrow.left {
    left: 20%;
}
.arrow:after {
    content: "";
    position: absolute;
    left: 20px;
    top: -20px;
    width: 25px;
    height: 25px;
    box-shadow: 6px 5px 9px -9px black;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    tranform: rotate(45deg);
}
.arrow.top:after {
    bottom: -20px;
    top: auto;
}
-->
</style>

HTML

<div id="sample">
    <label for="sampleTooltip">サンプル入力欄: </label>
    <input id="sampleTooltip" title="ツールチップのサンプル" />
</div>

スポンサード リンク

カテゴリー: GUI, JavaScript, jQuery, jQuery UI, Tooltip, ツールチップ, 逆引き パーマリンク