2014-11-07 2 views
0

скажем, у меня есть <img> тег. Я могу получить ширину и рост изображения, напримервычислить изображение экран занимают процент

width = 150px height=200px 

Но я хочу, сколько экрана занимает изображение? У меня есть таблица шириной 100%. В этой таблице есть столбцы Первый столбец У меня есть фиксированный логотип 5%.

Вторая колонка У меня есть якорный тег. В третьей колонке у меня есть изображение, ширина и высота которого зависит от каждой строки.

Теперь мне нужно установить второй тег привязки столбца, чтобы текст автоматически уменьшался или расширялся в зависимости от изображения в третьем столбце.

Предположим, ширина изображения 60%. Теперь вторая ширина столбца должна быть 35% (т.е. 100% -60% - 5%) Так как рассчитать, сколько процентов делает ширина изображения занимает (не пикселей)

Я ценю вашу помощь

+1

CSS3-х [ 'известково()'] (https://developer.mozilla.org/en-US/docs/Web/CSS/calc) функция –

+0

Или JavaScript. Или, может быть, 'display: table'. –

+0

Или максимальная пропускная способность на iamge? Скажите 'img {max-width: 60%}'? – somethinghere

ответ

0

Для вычислите ширину изображения, которое вы можете использовать .width().

Например:

imageWidth = $("img.imageClass").width(); 

С учетом сказанного, для того, чтобы рассчитать ширину в процентах, что нужно знать ширину самого широкого изображения.

$(window).load(function(){ 
    widestImg = 0; 
    $("img.imageClass").each(function(){ 
     w = $(this).width(); 
     if (w > widestImg) { 
      widestImg = w; 
     } 
    }); 
}); 

Расчет для наибольшего изображения должен выполняться в функции загрузки окна, потому что все изображения необходимо загрузить для точной оценки.

Теперь вы можете получить свой процент путем простого деления

percentage = $("img.imageClass").width()/widestImg; 

Добавить предупреждение, чтобы получить номера, чтобы помочь вам.

alert(percentage); 
+0

Эй, я не хочу получать среднее или самое большое/наибольшее изображение. Я просто хочу знать, сколько процентов экрана может занять изображение. Надеюсь, вы ясно знаете мою точку зрения – soft4time

0

Установите width столбца или ячейки, которые вы хотите быть динамически 100%.

jsFiddle

Смежные вопросы