jQuery . contains( container, contained )

jQuery API の jQuery . contains( container, contained ) は、containedに指定したDOM要素が、containerに指定したDOM要素内にあるいるかどうかをチェックするメソッド。

引数

container

DOM要素。

containedに指定したDOM要素を、含んでいるか、チェックしたいDOM要素。

contained

DOM要素。

containerに指定したDOM要素に、含まれているかを、チェックしたいDOM要素。

戻り値

Boolean

booleanType(論理型)。

containedに指定したDOM要素が、containerに指定したDOM要素内にあれば、「true」。

containedに指定したDOM要素が、containerに指定したDOM要素内になければ、「false」。

記述例

jQuery . contains(
    jQuery( '#sample' ) . get( 0 ),
    jQuery( '#sample-child' ) . get( 0 )
);

idが「sample-child」であるDOM要素が、idが「sample」であるDOM要素内にあるいるかどうかをチェックする

jQuery . contains(
    document . getElementById( 'sample' ),
    document . getElementById( 'sample-child' )
);

idが「sample-child」であるDOM要素が、idが「sample」であるDOM要素内にあるいるかどうかをチェックする

実装例(サンプル)

 

 

  • 項目1
  • 項目2
  • 項目3
  • 項目4
  • 項目5

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

「jquery-sample-child-a」ボタンをクリックすると、ボタンの右横に、「含まれている」と5秒間表示し、「項目2」を5秒間点滅させる。

「jquery-sample-child-b」ボタンをクリックすると、ボタンの右横に、「含まれていない」と5秒間表示する。

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

JavaScript

<script type="text/javascript">
<!--
jQuery( function() {
    jQuery( '#jquery-sample-button-a' ) . click(
        function() {
            jQuery( '#jquery-sample-button-a' ) . prop( 'disabled', true );
            var flag = jQuery . contains( jQuery( '#jquery-sample' ) . get( 0 ), jQuery( '#jquery-sample-child-a' ) . get( 0 ) );
            if( flag ) {
                jQuery( '#jquery-sample-message-a' ) . text( '含まれている。' );
                jQuery( '#jquery-sample-child-a' )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 );
            } else {
                jQuery( '#jquery-sample-message-a' ) . text( '含まれていない。' );
            }
            setTimeout( function() {
                jQuery( '#jquery-sample-message-a' ) . text( '' );
                jQuery( '#jquery-sample-button-a' ) . prop( 'disabled', false );
            }, 5000 );
        }
    );
    jQuery( '#jquery-sample-button-b' ) . click(
        function() {
            jQuery( '#jquery-sample-button-b' ) . prop( 'disabled', true );
            var flag = jQuery . contains( jQuery( '#jquery-sample' ) . get( 0 ), jQuery( '#jquery-sample-child-b' ) . get( 0 ) );
            if( flag ) {
                jQuery( '#jquery-sample-message-b' ) . text( '含まれている。' );
                jQuery( '#jquery-sample-child-b' )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 )
                    . fadeTo( 500, 0.25 ) . fadeTo( 500, 1 );
            } else {
                jQuery( '#jquery-sample-message-b' ) . text( '含まれていない。' );
            }
            setTimeout( function() {
                jQuery( '#jquery-sample-message-b' ) . text( '' );
                jQuery( '#jquery-sample-button-b' ) . prop( 'disabled', false );
            }, 5000 );
        }
    );
} );
// -->
</script>

CSS

<style>
<!--
#jquery-sample li {
    color: #333333;
    list-style-type: square;
}
-->
</style>

HTML

<p>
    <button id="jquery-sample-button-a">jquery-sample-child-a</button> <span id="jquery-sample-message-a"></span>
</p>
<p>
    <button id="jquery-sample-button-b">jquery-sample-child-b</button> <span id="jquery-sample-message-b"></span>
</p>
<ul id="jquery-sample">
    <li>項目1</li>
    <li id="jquery-sample-child-a">項目2</li>
    <li>項目3</li>
    <li>項目4</li>
    <li>項目5</li>
</ul>

スポンサード リンク

カテゴリー: API, JavaScript, jQuery, Utilities タグ: パーマリンク