Я создаю слайд-шоу для изображений различных размеров для отображения по центру по вертикали и горизонтали в пределах области холста.
В моем CSS я установил ширину и высоту изображения на 100%, чтобы каждое изображение пропорционально заполняло холст. Я хочу, чтобы холст автоматически изменял размеры в соответствии с размером экрана зрителя, поскольку исходный размер изображений довольно велик (до 800 пикселей в высоту).
Я использую jQuery 1.4 и высоту изображения, чтобы вычислить верхнее значение для абсолютного позиционирования его по центру холста.
Я пытался использовать jQuery для получения .height (), innerHeight () и externalHeight (), но он всегда получает полный размер изображения.
Я извлек элемент DOM из объекта jQuery и попытался использовать .width, .offsetWidth и .clientWidth, но это тоже всегда, похоже, возвращает полный размер изображения.
Firebug отображает правильные размеры, поэтому я знаю, что есть какой-то способ вычисления фактической высоты отображения изображения, я просто не могу понять, что это такое. Как получить фактическую высоту отображения изображения, если вы установили max-height = 100%?
Я не хотел вычислять и устанавливать высоту каждого изображения в js, но если мне нужно, я сделаю это. Похоже, я должен иметь возможность установить размер холста и автоматически настраивать изображения.