Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Пропроционально изменить изображения (https://javascript.ru/forum/jquery/41685-proprocionalno-izmenit-izobrazheniya.html)

ims 25.09.2013 11:42

Пропроционально изменить изображения
 
Есть такая задача: на сайте выкладывается материал.
Редактор многие картинки вставляет через копи/паст, т.е. картинки с других сайтов. При этом в теге img где-то бывают размеры, где-то нет.
Мне надо проверить все картинки на предмет их ширины.
Если ширина больше необходимой, но размеры пропорционально изменить.

Пробовал так:
jQuery.fn.thumbsImg = function(width, height)
{
return this.each(
function()
{
var _img = jQuery(this);

var x_ratio = width / _img.width();
var y_ratio = height / _img.height();

var ratio = Math.min(x_ratio, y_ratio);
var use_x_ratio = x_ratio<y_ratio ? 1 : 0;

var w = use_x_ratio ? width : Math.ceil(_img.width() * ratio);
var h = !use_x_ratio ? height : Math.ceil(_img.height() * ratio);

_img.css({width: w, height: h});
}
)
}

Но ни как не смог сделать, чтобы отслеживать максимальную ширину

ksa 25.09.2013 13:31

Цитата:

Сообщение от ims
Но ни как не смог сделать, чтобы отслеживать максимальную ширину

Можно и не отслеживать... ЦСС нам на то даден. :D

<style>
img {
   max-width: 50px;
   max-height: 50px;
}
</style>
<body>
<p>
<img src='http://javascript.ru/forum/images/ca_serenity/misc/logo.gif' />
Опа, ганам стайл!
</p>
<img src='http://javascript.ru/forum/images/smilies/smile.gif' />
</body>


Часовой пояс GMT +3, время: 07:35.