I new to jquery. my first srcipt is a tab browsing galley for images.
this script works fine expect for certain mysterious bug:
in firefox sometimes, very rarely, image resize doesn't get executed
on first load. upon refresh it works.
in safari it loads fine first time but upon refresh image resize and
positioning gets messed up. I close the browser window and  open a
new
one load the page and it looks fine.
in IE6, it just gives up on image resize. it sets the first 2-3
images
correctly and then gives up on the rest of the images. as if it  can
not loop through all the images.
any help appreciated!
luke
here is my code:
// create gallery images
$(document).ready(function()    {
        var max_width = 310;
        var max_height = 310;
        var selector = 'img.medium';
        $(selector).each(function()     {
                var width = $(this).width();
                var height = $(this).height();
                if (height > width) {
                        var ratio = (width / height);
                        var new_height = max_height;
                        var new_width = (new_height * ratio);
                        var position = Math.floor((max_width -
new_width)/2);
                        $(this).css("width",new_width);
                        $(this).css("height",new_height);
                        $(this).css("position","relative");
                        $(this).css("left",position);
                } else {
                        var ratio = (height / width);
                        var new_width = max_width;
                        var new_height = (new_width * ratio);
                        var position = Math.floor((max_height -
new_height)/2);
                        $(this).css("width",new_width);
                        $(this).css("height",new_height);
                        $(this).css("position","relative");
                        $(this).css("top",position);
                        }
                });
});

// create thumbs
$(document).ready(function()    {
        var max_width = 100;
        var max_height = 100;
        var selector = 'img.thumb';
        $(selector).each(function()     {
                var width = $(this).width();
                var height = $(this).height();
                if (height > width) {
                        var ratio = (width / height);
                        var new_height = max_height;
                        var new_width = (new_height * ratio);
                        var position = Math.floor((max_width -
new_width)/2);
                        $(this).height(new_height).width(new_width);
                        $(this).css("position","relative");
                        $(this).css("left",position);
                } else {
                        var ratio = (height / width);
                        var new_width = max_width;
                        var new_height = (new_width * ratio);
                        var position = Math.floor((max_height -
new_height)/2);
                        $(this).height(new_height).width(new_width);
                        $(this).css("position","relative");
                        $(this).css("top",position);
                        }
                });
});

//create complete tabbed gallery
$(document).ready(function ()   {
    var tabContainers = $('div.tabs > div.gallery > div');
    $('div.tabs span.tabNavigation a').click(function () {
        tabContainers.hide('slow').filter(this.hash).toggle('slow');
        $('div.tabs span.tabNavigation a').removeClass('selected');
        $(this).addClass('selected');
        return false;
    }).filter(':first').click();

Reply via email to