SYNCERのロゴ
アイキャッチ画像

StyleSheetList.item() - インデックス番号からスタイルシートを取得する

item()は、StyleSheetListのメソッドです。インデックス番号を指定してスタイルシートを取得します。

概要

名前
item
所属
StyleSheetList
IDL
getter StyleSheet? item(unsigned long index);
仕様書
https://drafts.csswg.org/cssom/#dom-stylesheetlist-item

説明

引数(index)には、インデックス番号を指定する。

チュートリアル

メソッドを利用してスタイルシートを取得する例です。

var styleSheetList = document.styleSheets ;

styleSheetList.item( 0 ) ;	// 1つ目のスタイルシート
styleSheetList.item( 1 ) ;	// 2つ目のスタイルシート
styleSheetList.item( 2 ) ;	// 3つ目のスタイルシート

このメソッドは、下記の通り、ブラケット記法で代用できます。特に理由がなければ、こちらを利用しましょう。

styleSheetList[0] ;	// 1つ目のスタイルシート
styleSheetList[1] ;	// 2つ目のスタイルシート
styleSheetList[2] ;	// 3つ目のスタイルシート

デモ

StyleSheetList.item()のデモです。このデモのドキュメントには、スタイルシートが2つ存在しています。

<!-- このコードは編集できます。 -->

<!DOCTYPE html>
<head>
<style>
	body { background-color: #fff ; }
	p { color: purple ; }
</style>
<style>
	div#result { white-space: pre-wrap ; }
</style>
</head>
<body>
<p>SYNCER</p>
<hr>
<div id="result"></div>
<script>
var styleSheetList = document.styleSheets ;

for( var i=0,l=styleSheetList.length; l>i; i++ ) {
	var styleSheet = styleSheetList.item( i ) ;
//	var styleSheet = styleSheetList[i] ;

	console.log( styleSheet ) ;
	appendText( "item(" + i + "): " + styleSheet + "\n" ) ;	

	var cssRules = styleSheet.cssRules ;

	for( var ii=0,ll=cssRules.length; ll>ii; ii++ ) {
		appendText( "\t" + cssRules[ii].cssText + "\n" + ( ii === ll-1 ? "\n" : "" ) ) ;	
	}
}

function appendText ( text ) {
	document.getElementById( "result" ).appendChild( document.createTextNode( text ) ) ;
}
</script>
</body>
</html>

サポート状況

ChromeFirefoxSafariEdgeIEOperaiOS SafariAndroid
  • Twitterでシェア
  • Facebookでシェア
  • Google+でシェア
  • はてなブックマークでシェア
  • pocketに保存
  • LINEでシェア
更新履歴
2017年10月14日 (土)
コンテンツを公開しました。