2010-04-26 3 views
1

Как вы узнаете ширину элемента, который обернут 20 нечетными другими элементами, но единственная фиксированная ширина, которую я знаю, является основной оболочкой, которая составляет 800 пикселей. Все дочерние элементы обычно представляют собой блоки, плавающие или нет, с различными прокладками и полями.
Мне не нужен ответ на конкретный случай, мне просто интересно, есть ли инструменты или трюки, чтобы быстро вычислить такие вещи.
БлагодаряКак получить ширину элемента без определенной ширины?

EDIT: Извините забыть, это на внешний сайт, где я не могу установить любые сценарии или редактировать CSS.

+2

Это вопрос программирования? Как вы собираетесь использовать значение ширины, когда вы его получили? – Alohci

+1

Похоже, что вы ищете * инструмент *, а не для * кода *. Вы должны были упомянуть об этом более подробно или спросить на superuser.com. – BalusC

+0

Я попросил * инструменты или трюки, чтобы быстро вычислить такие вещи *, поскольку я не знал ответа, которого я не знал, чего ожидать. – Moak

ответ

2

Вы можете поместить JQuery использовать и использовать его width() метод для этого. JQuery достаточно умен, чтобы получить вычисленную ширину указанного вами элемента.

+0

см. Редактировать ... не мой сайт – Moak

+1

@Moak: Если вы не можете редактировать css или скрипт, и это внешний веб-сайт, который вы не можете контролировать, как вы можете беспокоиться о получении ширины элементов, это невозможно :( – Sarfraz

+0

I может добавить ограниченное количество html внутри элемента, мое намерение состоит в том, чтобы помещать 3 шрифта с разным размером и интервалом, и для этого мне нужны точные пиксели. – Moak

3

jQuery имеет width(), что позволяет надежно определить ширину любого элемента DOM в браузерах. Это помогает?

+0

извините нет, см. edit ... – Moak

+0

Можете ли вы отредактировать сама страница html Если это так, вы можете это сделать. Обратитесь к размещенной версии jquery. –

+0

Разумеется, использование jQuery только для этого немного переборщило. Вместо этого я отвечу с ответом BalusC. –

3

Вам необходимо использовать element.offsetWidth.

var width = element.offsetWidth; 
+0

Возможно, это Я не совсем понимаю вопрос OP. Если кто-нибудь может дать некоторые указания, что это правильный ответ, я буду рад поддержать :) (я тоже не спустил.) Однако OP не может использовать jQuery, поэтому вам нужно избавиться от '$'. –

+0

Вы были правы, я путал 'offsetWidth' с' clientWidth'. – BalusC

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