Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Фреймы
 
 автор: mistersmak   (28.08.2005 в 07:05)   письмо автору
 
 

Допустим есть 2 фрейма (верхний и нижний).
Надо чтобы эти фреймы грузились токо вместе. Чтобы, например нельзя было загрузить только верхний или токо нижний, а в случае попытки просто говорило "ты суда не ходи, ты туда ходи, а то и-нет отрубят" :)
Серьезный Вопрос:
Как это сделать?

   
 
 автор: Евгений Петров   (28.08.2005 в 14:25)   письмо автору
 
   для: mistersmak   (28.08.2005 в 07:05)
 

А зачем это надо?

   
 
 автор: mistersmak   (28.08.2005 в 16:53)   письмо автору
 
   для: Евгений Петров   (28.08.2005 в 14:25)
 

Чтобы сайт не закрыли - он состоит из 2-х фреймов, и реклама находится в верхнем, а некоторые умные люди просто пишут адрес нижнего - наглядное нарушени п.7 правил предоставления хостинга. :(

   
 
 автор: Евгений Петров   (28.08.2005 в 17:48)   письмо автору
 
   для: mistersmak   (28.08.2005 в 16:53)
 

Ну тогда можно в том фрейме, где стоит разметка <frameset></frameset> обьявить какую нибудь переменную и из тех двух фреймов проверять объявлена ли она если нет, тогда сильно ругатсья.

   
 
 автор: mistersmak   (01.09.2005 в 00:04)   письмо автору
 
   для: Евгений Петров   (28.08.2005 в 17:48)
 

Что-то оно как-то СТРАННО работает...
Если страница открыта частью - отрывает вместе, а дальше...
... дальше открывает. Нужно что-нибудь похитрее.

   
 
 автор: Duran   (01.09.2005 в 08:25)   письмо автору
 
   для: mistersmak   (01.09.2005 в 00:04)
 

Вообщет, достаточно просто проверять, загружена ли каждая страничка во фрейме. Если нет - то редирект на index с именем странички, который уже сам поймет, куда это запихнуть :-).

В секции head вставьте след. код:


<script>
<!--
function check_fr()
{
var string = location.search;
var current_page= string.substring(1, string.length)
if (location.search == "") 
current_page="main.html"
if(location.replace)
{parent.frames[0].location.replace(current_page)}
else {parent.frames[0].location.href= current_page}
}
//-->
</script>


А на каждой страничке, открываемой во фреймах вставьте:


<script language="JavaScript">
<!--
 if (window.parent.frames.length == 0) 
{
    if(location.replace)
    {
    location.replace("index.html?" +location.href)
    }
    else
    {
    location.href="index.html?" + location.href;
    }
}
//-->
</script>


К качестве фрейма лучше использовать iframe, тогда не придеся мудрить относительно прогрузки 1-го фрейма, но появится проблема динамического определения размера фрейма по "высоте" загружаемой странички... по памяти что-то типа так...


function framesize()
{
parent.document.getElementById('FrameId').style.height=10;
parent.document.getElementById('FrameId').style.height = parent.FrameId.document.body.scrollHeight;
}

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования