サンプルコード
要素ごとに異なるオプションを指定するためにカスタムデータ属性を使う。
<p><img src="sample.jpg" data-size="20"></p> <p><img src="sample.jpg"></p> <p><img src="sample.jpg" data-size="30"></p> <script src="js/jquery.showsize.js"></script>
$('img').showsize();
jquery.showsize.js
;(function($) { $.fn.showsize = function(options) { console.log(this); var elements = this; elements.each (function() { var opts = $.extend({}, $.fn.showsize.defaults, options, $(this).data()); $(this).click(function() { var msg = $(this).width() + 'x' + $(this).height(); $(this).wrap('<div style="position:relative;"></div>'); var div = $('<div>').text(msg).css('position','absolute').css('top',0) .css('padding','2px').css('background','black').css('color','white') .css('font-size',opts.size).css('opacity',opts.opacity); $(this).after(div); }); }); return this; }; $.fn.showsize.defaults = { size: 10, opacity: 0.9, }; })(jQuery);