I am using this javascript that resizes my the pictures on my site. But it doesn’t seem to load the javascript when I am loading the page.
This is my javascript:
$(document).ready(function () {
$("img.picture").each(function () {
var maxWidth = 100; // Max width for the image
var maxHeight = 100; // Max height for the image
var ratio = 0; // Used for aspect ratio
var width = $(this).width(); // Current image width
var height = $(this).height(); // Current image height
// Check if the current width is larger than the max
if (width > maxWidth) {
ratio = maxWidth / width; // get ratio for scaling image
$(this).css("width", maxWidth); // Set new width
$(this).css("height", height * ratio); // Scale height based on ratio
height = height * ratio; // Reset height to match scaled image
width = width * ratio; // Reset width to match scaled image
}
// Check if current height is larger than max
if (height > maxHeight) {
ratio = maxHeight / height; // get ratio for scaling image
$(this).css("height", maxHeight); // Set new height
$(this).css("width", width * ratio); // Scale width based on ratio
width = width * ratio; // Reset width to match scaled image
}
$(this).show();
});
});
And this is my header:
<link href="Styles/home/photo.css" rel="stylesheet" type="text/css" />
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script src="ResizePicture.js" type="text/javascript"></script>
<script src="ChangePicture.js" type="text/javascript"></script>
It’s called ResizePicture.js
Anyone out there got an idea why it doesn’t load from the start??
In some browsers image width and height can be fetched after it’s been loaded. There are two ways to fix this issue:-
or
change your code to:-
I would rather do resizing in SERVER SIDE script not with js.