| imho.ws |
![]() |
|
|
|
# 2 |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Я сам задавался этим вопросом долгое время и так ничего и не нашел, да и вопрос такой уже поднимался тут на форуме....
Но вот недавно натолкнулся на такую вещь, попоробуй использовать document.body.scrollWidth и document.body.scrollHeight соответственно для загруженного документа чтобы определить его размер - ну а дальше дело техники ресайзить, я сам не пробовал, но по идее должно работать!
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|
|
|
# 4 |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
2RaZEr чего-то я не понял как с помощью этой функции решить поставленную задачу изменения размера ифрейма?
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|
|
|
# 6 | |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|
|
|
|
# 8 |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
2RaZEr Если последний пост был мне, то я теперь решительно запутался: в данном топике решается совсем иная задача никак не связанная с определением высоты фрейма (а именно такая стояла задача сдесь). Если Вы указывали на объяснение использования *.cloneNode() - то я и сам вкурсе что это такое и с чем его едят. И не в ограничениях хостинга проблема (у меня платный хостинг, есть и SSI, и PHP и все что надо...) просто как решить поставленную в данном топике проблему????
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|
|
|
# 9 |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
А почему именно я так пристал к данному вопросу я все-таки объясню - мне тоже было бы очень неплохо решить подобную проблему.
Конкретный пример (точнее конкретно стоящая передо мной задача): Есть сайт, все сделано на инклюдах, но в одну из страниц вставлено голосование, для того чтобы не обновлять всю страницу из-за ответа (что сильно раздражает пользователей) голосование находится в теге <iframe>. Я написал что-то вроде CMS для своего сайта, поэтому создание и управление голосованиями происходит из формы управления, где количество ответов заранее не задано. Так как голосование находится в контексте страницы, то присутствие полос прокрутки очень нежелательно. Сейчас после создания голосования параметры тега <iframe> подбираются руками после каждого изменения, более того, если пользователь изменит размер браузера, то тоже ничего хорошего не выйдет. Посему я и хочу сделать размеры фрейма в зависимости от ФАКТИЧЕСКОЙ высоты и ширины содержания фрейма!
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. Последний раз редактировалось RaZEr; 09.04.2004 в 00:21. |
|
|
|
|
# 12 | |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
1) Обеспечение полной совместимости со всеми браузерами 2) При голосовании опять же должна быть перезагрузка сначала фрейма, потом перенос на место 3) И, наверное главное: при загрузке сайта, пока полностью не загрузится невидимый фрейм - сильно может расползтись структура и дизайн сайта, т.к. там не будет ничего сначала, а потом оно будет разъезжаться!!!
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|
|
|
|
# 14 |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Итак, проблемы реальные....
Помочь посуществу нам так и не помогли... Поэтому разбираться пришлось самому... Итак, Anthony, я был не совсем прав в первом своем посте: document.body.scrollHeight - заданная высота фрейма (ну тоесть какая сейча у него она фактическая), а нужно нам document.body.offsetHeight - это какраз "полезная высота", тоесть сколько занимает содержимое фрейма!!! Никакие листинги приводить не буду, потому что дальше дело техники - пишется функция из одной строчки и вешается на событие onload() основного документа. Вот и все!!! Как всегда оказалось что самое лучшее решение на поверхности!!!
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|
|
|
# 15 |
|
Newbie
Регистрация: 05.04.2004
Сообщения: 39
![]() |
Огромное спасибо, Hubbitus. То что document.body.scrollHeight отвечает за реально имеющиеся размеры я в ходе эксперимента уже установил. Теперь начну учить document.body.offsetHeight.
![]() И еще вопрос в догонку: В какой книжке можно сие знание почерпнуть. Так, на будущее, а то в моей таких умных слов нету Последний раз редактировалось Anthony; 13.04.2004 в 12:05. |
|
|
|
|
# 16 |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Если я что-то непонятно написал, то не стесняйся справшивать (можешь в привате или по асе..)...
Кстати, если тебе (или кому-то другому) надо то я могу выслать код примера, или сдесь выложить... я просто не думаю что это целесообразно. А вообще я очень люблю последнее время вот этот справочник
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|
|
|
# 17 |
|
Newbie
Регистрация: 05.04.2004
Сообщения: 39
![]() |
scrollHeight or offsetHeight
scrollHeight or offsetHeight - this is the question.......
И, все-таки, я его почти сделал! Только вот удалось сие именно через scrollHeight. Одно "но" имеется: напихал я в body из фрейма 38 килопапугаев текста, а scrollHeight посчитал его за одну строчку... Короче, затолкав текст в div, мне почти удалось достичь результата с какой-то идиотской погдешностью в 0.5-5.0 строчек. Да здравствует метод научного тыканья и стольник мартышек-машинисток!Из, подвергавшихся исследованию scrollHeight, оffsetHeight & clientHeight: scrollHeight - приблизительно выдает "полезную" высоту. оffsetHeight - "действительные" размеры. clientHeight - чуть меньше, чем предыдущий, так что, очевидно, то же самое, только с учетом полей - а то я сам посчитать не мог?(кстати, жаль Нетскейпа нету - проверить, а то прошлый раз он мне клиентскую ширину вместе со скроллингом посчитал) |
|
|
|
|
# 18 | ||
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
Цитата:
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
||
|
|
|
|
# 19 |
|
Newbie
Регистрация: 05.04.2004
Сообщения: 39
![]() |
Сдаюсь!
ОК, блин! Сдаюсь.
Пишу в ифреймовском хтмльнике на onload тега body: top.document.getElementById('ifr').style.height=document.body.scrollHe ight; и опять остается скролл на пару строк. Что и как надо было? В iframe я подгружал эту же страничку, так она заканчивается на чубчике того колобка, что нарисован на нижнем баннере. Последний раз редактировалось Anthony; 14.04.2004 в 17:31. |
|
|
|
|
# 20 | |||
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
Цитата:
document.getElementById('myframe').height=document.getElementById('myf rame').document.body.offsetHeight; И никакого скрола у меня нету! Только учти я сдесь для примера жестко задал ширину фрейма, и никак не учитываю ее, если нужно, то неоюходимо как-то обрабатывать изменение обоих измерений... (думаю что не сложно) Цитата:
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|||
|
|