jQuery
Tips
jQueryでファイルサイズを自動で取得するAuto Filesize T72
ページ内の指定箇所のリンク先のファイルサイズを取得して、テキストで容量を追記するajaxを利用したjQueryプラグインです。
参照元:
Auto Filesize T72
IE8+ / jQuery 2.2(1.12) 動作確認
設置方法
いつも通りjQuery本体を読み込みます。
<!--[if lt IE 9]> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script> <![endif]--> <!--[if gte IE 9]><!--> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script> <!--<![endif]-->
本体の読み込みと実行
デフォルトの設定ではpdfのみ容量を表示するようになっています。取得するファイルの拡張子をextensionで追加すると他の形式にも対応するようです。下記では5つの拡張子ファイルに対応しています。
<script src="auto_filesize-1.0.7.min.js"></script> <script> $(document).ready(function() { $(".auto_filesize").auto_filesize({ //ファイルを取得する拡張子を指定 'extension' : 'jpg,png,pdf,docx,xlsx', //サイズを記述する要素のクラス指定 'size_part' : 'size_part', //単位の設定。1,000KBを超えた時にMBを使用 'unit' : 'MB' }); }); </script>
html部分の記述例
ローカルでは動作しません。またaタグに.auto_filesizeのclass、さらに設置方法通りに指定した場合、aタグ内にspanタグで.size_partのclassを指定しないと動きません。
<ul> <li> <a href="sample.jpg" class="auto_filesize"> Sample JPG<span class="size_part"></span> </a> </li> <li> <a href="sample.png" class="auto_filesize"> Sample PNG<span class="size_part"></span> </a> </li> <li> <a href="sample.pdf" class="auto_filesize"> Sample PDF<span class="size_part"></span> </a> </li> <li> <a href="sample.docx" class="auto_filesize"> Sample Word<span class="size_part"></span> </a> </li> <li> <a href="sample.xlsx" class="auto_filesize"> Sample Excel<span class="size_part"></span> </a> </li> </ul>
オプションの補足
旧バージョンではbracketsやwrapといった囲みや追加でclass付きspanを書き出すオプションがあったようですが、現在は廃止されています。括弧で囲みたい場合はspan.size_partの外側にテキストで入れるか、spanに:beforeや:afterで括弧を書き出してあげれば良さそうです。
/* 容量の前後に余白を空けて[]で囲むCSS例 */ .size_part{padding: 0 5px;} .size_part:before{content:"[";} .size_part:after{content:"]";}