Гость
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Высота блока, Jquery / 9 сообщений из 9, страница 1 из 1
10.11.2021, 10:16
    #40110561
Алексей Шм.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
Заплутал вокруг одного дерева, подскажите пожалуйста.
response подгружает html в блок. Оперирую высотой (height()) этого блока, чтобы откорректировать положение существующих блоков на странице. Только значение этого блока какое-то левое. И по высоте он выводится не весь. Однако если посмотреть высоту блока браузерной отладкой, то в реальности высота правильная

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
$.post(url, function (response) {
       
            $('#mtc').find('.boxfuvcontent').empty();
            $('#mtc').find('.boxfuvcontent').append(response);

            var heightresp = $('.boxfuvcontent').height();
            alert(heightresp);
        });


То есть в коде значение неправильное, а отладка показывает верное (2000пикс.), но сам блок по высоте обрезается (920пикс). Что за чудеса?
...
Рейтинг: 0 / 0
10.11.2021, 10:17
    #40110562
Алексей Шм.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
Алексей Шм.,
...
Рейтинг: 0 / 0
10.11.2021, 11:25
    #40110601
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
Алексей Шм.
response подгружает html в блок. Оперирую высотой (height()) этого блока, чтобы откорректировать положение существующих блоков на странице. Только значение этого блока какое-то левое. И по высоте он выводится не весь. Однако если посмотреть высоту блока браузерной отладкой, то в реальности высота правильная

Вполне возможно что блок просто не успел полностью от рисоваться браузером...
Т.е. ты читаешь не "конечную" высоту блока.
...
Рейтинг: 0 / 0
10.11.2021, 14:47
    #40110711
Алексей Шм.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
krvsa
Алексей Шм.
response подгружает html в блок. Оперирую высотой (height()) этого блока, чтобы откорректировать положение существующих блоков на странице. Только значение этого блока какое-то левое. И по высоте он выводится не весь. Однако если посмотреть высоту блока браузерной отладкой, то в реальности высота правильная

Вполне возможно что блок просто не успел полностью от рисоваться браузером...
Т.е. ты читаешь не "конечную" высоту блока.

Тогда удивляет, что обрезается всегда на одном и том же значении в 920px,независимо от браузера и компа
...
Рейтинг: 0 / 0
10.11.2021, 15:03
    #40110725
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
Алексей Шм. , попробуй, для начала, такой вариант...
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
$.post(url, function (response) {
	const o = $('#mtc .boxfuvcontent');
	o.empty();
	o.one('load', _ => {
		const heightresp = o.height();
		alert(heightresp);
	})
	o.append(response);

});
...
Рейтинг: 0 / 0
11.11.2021, 17:54
    #40111112
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
Может, рунтайм-стиль посмотреть?
...
Рейтинг: 0 / 0
12.11.2021, 15:15
    #40111379
Алексей Шм.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
krvsa
Алексей Шм. , попробуй, для начала, такой вариант...
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
$.post(url, function (response) {
	const o = $('#mtc .boxfuvcontent');
	o.empty();
	o.one('load', _ => {
		const heightresp = o.height();
		alert(heightresp);
	})
	o.append(response);

});



Также.

ShSerge
Может, рунтайм-стиль посмотреть?

Это где посмотреть?
Заметил, что если перейти на страницу по ссылке с другой страницы - все отлично, а если же обновлять страницу браузера - вот такая беда и происходит.
...
Рейтинг: 0 / 0
12.11.2021, 15:20
    #40111384
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
Алексей Шм.
Также.

А если с задержкой?
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
$.post(url, function (response) {
	const o = $('#mtc .boxfuvcontent');
	o.empty();
	o.one('load', _ => {
		setTimeout(_ => {
			const heightresp = o.height();
			alert(heightresp);
		}, 1000)
	})
	o.append(response);

});
...
Рейтинг: 0 / 0
14.11.2021, 04:18
    #40111809
Алексей Шм.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Высота блока, Jquery
krvsa
Алексей Шм.
Также.

А если с задержкой?


Почему-то вообще ничего не происходит. НО!
Эта Ваша мысль, что ответ не успевает загрузиться, не давала мне покоя. начал думать, почему именно такая высота (920) выдается всегда и просчитал, что эта высота содержимого без учета высоты пяти изображений. Изображения загружались (первые два), но высота их почему-то была нулевой. Сделал вот так:

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
$("#mtc").find(".boxfuvcontent").append(response);
            var img = $('.boxfuvcontent').find('img');

            var count = 0;

            img.on('load', function () {
                count++;
                if (count == img.length) {
                    if ($("#mtc").height() < $('.boxfuvcontent').height()) {
                        $("#mtc").attr("orig_height", $("#mtc").height());
                        $("#mtc").height($("#mtc").height() + ($('.boxfuvcontent').height() - $("#mtc").height()) + 70);
                      
                    }




Все успешно заработало.
Спасибо за идею!
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Высота блока, Jquery / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]