javascript - Is there a way to add the scale value for transform in css using JS -
i trying zoom in images fit window if height of images less using transform
in css.
but images of different height uploaded users of website giving following css code not zooming enough different images.
css
.small{ transform:scale(1.42,1.42); -webkit-transform:scale(1.42,1.42); -moz-transform: scale(1.42,1.42); -o-transform: scale(1.42,1.42); -ms-transform: scale(1.42,1.42); /*transition: 0.65s; -webkit-transition: 0.65s; -moz-transition: 0.65s; -o-transition: 0.65s; -ms-transition: 0.65s;*/ }
so wanted add scale
value of transform
dynamically using js . have done till following script
script
function imagehandler() { var images = $('.rslides ').find('img'); $('.rslides ').find('#bg').addclass('thumbnail'); settimeout(function () { images.each(function () { // jquery each loops on jquery obj var mh=290; var h = $(this).innerheight(); // $(this) current image if( h < mh) { $(this).addclass('small'); var m = mh-h; m = m/2; // m = m + pginationh; $(this).css('margin-top', +m + "px"); console.log("padding small:",m); } if(h > mh) { $(this).addclass('big'); var m = h-mh; m = m/2; //console.log(m); $('.big').css('margin-top',-m +"px" ); console.log("padding big:",m); } }); }, 1000); }
the above script maps image , add class .small
if height less 290 . want add transform
scale value according height of image
can 1 me out
thanks in advance
you can pass in transform
property in same way passed in margin-top
.big
element. jquery handles prefixing on transform
property, can pass in new scale value this:
$('.small').css({ transform: 'scale(' + scale + ')' });
for example, .small
element on chrome given -webkit-transform
property whereas on firefox given -moz-transform
property.
as how generate scale values, can base these upon maximum of width
or height
according base value:
var height = $('.small').height(), width = $('.small').width(), largest = height > width ? height : width, base = 150, scale; scale = base / largest;
here base
value 150. if largest of height
or width
300, example, scale become 0.5
(as 150 / 300 = 0.5).
Comments
Post a Comment