Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ширина блока в пикселях 
:(
    Опции темы
zebulun
Дата 5.3.2013, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 1.9.2011

Репутация: нет
Всего: нет



ширина блока задается в %, метод width() jquery дает эти самые %, хотя в должен по идеи как раз в пикселях, как получить реальную ширину блока в пикселях?
PM MAIL   Вверх
Arantir
Дата 5.3.2013, 21:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Рыбак без удочки
**


Профиль
Группа: Участник
Сообщений: 960
Регистрация: 18.11.2012

Репутация: 14
Всего: 55



Все куда сложнее. Ширина - это совокупность нескольких величин (контент, границы, отступы и т.д.). Причем для разных ситуаций берутся разные комбинации оных.

.width() возвращает css-свойство. То есть, то же самое, что было задано в css. И ничего иного как раз возвращать не должно.

Узнать реальную ширину блока можно с помощью .innerWidth() и .outerWidth(). 
innerWidth - это ширина контента, некого прямоугольника, вплотную прилегающего к содержимому.
outerWidth - это ширина всего блока, с учетом всех border, margin, padding и т.д. Это некий прямоугольник, к которому прилегают соседние к блоку элементы.

Добавлено через 3 минуты и 28 секунд
Стоит заметить, что по-умолчанию .outerWidth() возвращает ширину без учета margin (.outerWidth(false)). То есть ширину блока, ограничивающегося заданными border-ами. Что, в принципе, наиболее логично подходит под значение "ширины блока".
С учетом margin ширину можно получить с помощью .outerWidth(true).


--------------------
interface Жопа {
    // ATTENTION: has to be implemented by every class of the project for proper project work
}
PM   Вверх
zebulun
Дата 5.3.2013, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 1.9.2011

Репутация: нет
Всего: нет



к сожалению, .innerWidth() и .outerWidth() тоже показывают %
PM MAIL   Вверх
Arantir
Дата 5.3.2013, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Рыбак без удочки
**


Профиль
Группа: Участник
Сообщений: 960
Регистрация: 18.11.2012

Репутация: 14
Всего: 55



Какая у вас версия jQuery? Согласно документации к последней версии, функция возвращает ширину именно в пикселях:
Цитата

Returns the width of the element, along with left and right padding, border, and optionally margin, in pixels.
http://api.jquery.com/outerWidth/


--------------------
interface Жопа {
    // ATTENTION: has to be implemented by every class of the project for proper project work
}
PM   Вверх
zebulun
Дата 5.3.2013, 23:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 1.9.2011

Репутация: нет
Всего: нет



jquery-1.7.1-доки я читал попробуйте сами
PM MAIL   Вверх
ksnk
Дата 6.3.2013, 00:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



Цитата(zebulun @  5.3.2013,  23:19 Найти цитируемый пост)
jquery-1.7.1-доки я читал попробуйте сами 

Так, что ли?



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Arantir
Дата 6.3.2013, 00:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Рыбак без удочки
**


Профиль
Группа: Участник
Сообщений: 960
Регистрация: 18.11.2012

Репутация: 14
Всего: 55



Цитата(zebulun @  5.3.2013,  22:19 Найти цитируемый пост)
попробуйте сами 

http://jsfiddle.net/ybKHd/
FF18 - ширина в пикселях.


Цитата(zebulun @  5.3.2013,  22:19 Найти цитируемый пост)
jquery-1.7.1
Это уже старье =)


--------------------
interface Жопа {
    // ATTENTION: has to be implemented by every class of the project for proper project work
}
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0721 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.