Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.03.2017, 03:15
Интересующийся
Отправить личное сообщение для lempzz Посмотреть профиль Найти все сообщения от lempzz
 
Регистрация: 27.01.2017
Сообщений: 12

Значение в два с капелькой раза больше
есть элемент .col-carousel
почему
$('.col-carousel').css('top')

возвращает 47px, а
var pos = $('.col-carousel').css('top')

возвращает 111?
Ответить с цитированием
  #2 (permalink)  
Старый 25.03.2017, 03:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

lempzz,
Ответить с цитированием
  #3 (permalink)  
Старый 25.03.2017, 03:49
Интересующийся
Отправить личное сообщение для lempzz Посмотреть профиль Найти все сообщения от lempzz
 
Регистрация: 27.01.2017
Сообщений: 12

рони, пожалуйста, вот ссылка, чекайте через консоль.

Последний раз редактировалось lempzz, 25.03.2017 в 04:00.
Ответить с цитированием
  #4 (permalink)  
Старый 25.03.2017, 04:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

lempzz,
что проверять?
Ответить с цитированием
  #5 (permalink)  
Старый 25.03.2017, 04:07
Интересующийся
Отправить личное сообщение для lempzz Посмотреть профиль Найти все сообщения от lempzz
 
Регистрация: 27.01.2017
Сообщений: 12

рони,
в консоли
$('.col-carousel').css('top')

и просто
pos

который в скрипте написан как
var pos = $('.col-carousel').css('top');
Ответить с цитированием
  #6 (permalink)  
Старый 25.03.2017, 04:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

lempzz,
а ready или load не пробовали?
Ответить с цитированием
  #7 (permalink)  
Старый 25.03.2017, 04:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

lempzz,
на странице ещё размеры не сформировались а вы уже их измеряите.
Ответить с цитированием
  #8 (permalink)  
Старый 25.03.2017, 04:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

lempzz,
var pos;
$(window).on("load", function() {
     pos  = $('.col-carousel').css('top');// или целиком весь код сюда,  если глобал не нужен
})
Ответить с цитированием
  #9 (permalink)  
Старый 25.03.2017, 04:35
Интересующийся
Отправить личное сообщение для lempzz Посмотреть профиль Найти все сообщения от lempzz
 
Регистрация: 27.01.2017
Сообщений: 12

Через функцию .on() всё сработало. Большое Вам спасибо.
Получается, что есть объявить пустую глобальную переменную и через функцию присвоить ей значение, то оно сохранится глобально, я правильно понял?

Цитата:
на странице ещё размеры не сформировались а вы уже их измеряите.
И подскажите, почему так случилось? То есть почему размер не сформирован, а его позиция уже 111px. И с высотой тоже самое было. Высота по факту 300рх, а возвращало 71рх. Важно понять почему так происходит.
Ответить с цитированием
  #10 (permalink)  
Старый 25.03.2017, 07:42
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

lempzz,
потому что не всё имеет размер, например картинки не прогрузились.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция срабатывает два раза, а должна - один pevec1 Элементы интерфейса 1 03.03.2012 04:29
$(document).ready() выполняется два раза syegorius AJAX и COMET 5 16.05.2011 23:17
Два блока div разъезжаются при скроллинге окна браузера. call007 jQuery 0 03.04.2011 16:21
Как два раза вставить таймер alexvost Общие вопросы Javascript 2 08.02.2011 02:28
jCarousel - два раза на одной странице new jQuery 0 22.04.2010 22:20