ОсновноеRadiotalkПользовательское
MPCHAT - CMS хостинг чатов для профессионалов
83   •   Посмотреть все темы

Работа с фреймовой системой...

 

3363
Влад @4ih-pqh
Lone_Wolf пишет:

а вот ето я нашол по привату:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<style>
<!--
a, td
{
font-family: Verdana, Arial;
font-size:10px;
color:#3D4976;
font-weight: bold;
text-decoration: none;
}
a:hover { color:white }
-->
</style>
<script language="JavaScript">
<!--
var fr_size = 30;
function change_size(side)
{
if(side==1) fr_size-=4;
if(side==2) fr_size = 30;
if(side==0) fr_size+=4;
if(fr_size <10) { fr_size=10; }
if(fr_size >90) { fr_size=90; }
var po = null;
po = parent.document.getElementById('pvt_frameset');
if(!po) po= parent.document.all('pvt_frameset');
if(po) po.rows = "*,"+ fr_size + "%, 60";
else alert('You have too exotic old browser to support 😀 ');
}

function click_pause()
{
var fvVal = parent.voc_shower_priv.pause;

if (fvVal != 1) {
document.all('pause_img').src = pause_on.src;
document.all('pause_img').alt = 'Включить скроллинг (прокрутку) сообщений';

parent.voc_shower_priv.pause = 1;
} else {

document.all('pause_img').src = pause_off.src;
document.all('pause_img').alt = 'Отключить скроллинг (прокрутку) сообщений';
parent.voc_shower_priv.pause = 0;
}
}

if (document.images)
{
pause_on = new Image(24,24);
pause_on.src ="http://chat.dobroe.ru/designes/rozmova4/grunge/pause_on.gif";

pause_off = new Image(24,24);
pause_off.src ="http://chat.dobroe.ru/designes/rozmova4/grunge/grunge_11.gif";
}

//-->
</script>
</head>
<body bgcolor="#abd256"leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0">
<tr align="center">
<td width="143" height="24" background="http://chat.dobroe.ru/designes/rozmova4/grunge/grunge_09.gif" align="right">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><b><font color=white>Приват</font></a></b></nobr>&nbsp;&nbsp;</td>
<td width="23" height="24"><a href="#" onClick="parent.clear_priv()"><img src="http://chat.dobroe.ru/designes/rozmova4/grunge/grunge_10.gif" width="23" height="24" border="0" alt="Очистить приват?"></a></td>

<td width="20" height="24"><a href="#" onClick="click_pause()"><img border="0" name="pause_img" id="pause_img" alt="Отключить скроллинг (прокрутку) сообщений" src="http://chat.dobroe.ru/designes/rozmova4/grunge/grunge_11.gif" width="20" height="24"></a></td>
<td height="24" align="center"><a href="#" onClick="change_size(1);"><img src="http://chat.dobroe.ru/designes/rozmova4/grunge/down.gif" height="24" width="24" border="0"></a>&nbsp;<a href="#" onClick="change_size(0);"><img src="http://chat.dobroe.ru/designes/rozmova4/grunge/up.gif" height="24" width="24" border="0"></a></td>
<td width="224" height="24"><img src="http://chat.dobroe.ru/designes/rozmova4/grunge/grunge_14.gif" width="224" height="24"></td>
</tr>
</table>
</body>
</html>

народ обьясните куда и что нуно вставить 🙁

В том чате откуда этот фрейм,у него стоит движок VOC++ ,тоесть под мп этот фрейм не пойдёт,можешь про него забыть как про страшный сон 😀

3
Alanto @Alanto
Народ помогите советом - добавил к стандартной системе фреймов один дополнительный "радио" всё работает, а при отправке сообщения в чат выскакивает окошко типа "http://smchat.ru/название чата/index.php?inc=write - почему? Напутал что-то?

2536
удалён @crigon
Alanto, покажи код.

3
Alanto @Alanto
crigon пишет:

Alanto, покажи код.

Вот код фреймов:

<frameset rows='*' border=0>
<frameset rows='0,*,60' border=0>
<frame name=topframe src=top.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
<frameset cols='0,*,320' border=0>
<frame name=mleft src=mleft.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frameset name=sets rows='0,*,0' border=1>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=Yes frameborder=1>
<frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
</frameset>
<frameset rows="*,100">
<frame name=users src=users.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frame name="radio" src="radio.html">
</frameset>
</frameset>
<frame name=chat src=chat.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
</frameset>
</frameset>

А это код страницы - радио:

<select name=href onchange='sel(this.value);'>
<OPTION VALUE="">-- Выберите радиостанцию --</OPTION>
<OPTION VALUE="http://russianfantasy.ru/wm-radio.asx">RF Radio (Германия)</OPTION>
</select>
<div id=mus></div>
<script>
function sel(href){
if(href=='') mus.innerHTML="Включить музыку";
else mus.innerHTML="<EMBED type=application/x-mplayer2 src="+href+" width=300 height=45>";}
sel('');
</script>

2536
удалён @crigon
<frameset rows='0,*,60' border=0>
<frame name=topframe src=top.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
<frameset cols='0,*,0,320' border=0>
<frame name=mleft src=mleft.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frameset name=sets rows='0,*,0' border=1>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=Yes frameborder=1>
<frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
</frameset>
<frame name="write" scrolling="no" frameborder="0" border="0" borderwidth="0" style="border: 0;" noresize="noresize" />
<frameset rows="*,100">
<frame name=users src=users.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frame name="radio" src="radio.html">
</frameset>
</frameset>
<frame name=chat src=chat.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
</frameset>

Попробуй так. Там фрейм write пропущен.

3
Alanto @Alanto
crigon пишет:

<frameset rows='0,*,60' border=0>
<frame name=topframe src=top.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
<frameset cols='0,*,0,320' border=0>
<frame name=mleft src=mleft.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frameset name=sets rows='0,*,0' border=1>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=Yes frameborder=1>
<frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
</frameset>
<frame name="write" scrolling="no" frameborder="0" border="0" borderwidth="0" style="border: 0;" noresize="noresize" />
<frameset rows="*,100">
<frame name=users src=users.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frame name="radio" src="radio.html">
</frameset>
</frameset>
<frame name=chat src=chat.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
</frameset>

Попробуй так. Там фрейм write пропущен.

Огромнейшее спасибо - заработало!!!

2
паган @паган
столкнулся с проблемой
хочу поменять местами фрейм самого чата и фрейм учасников
тоесть по центру всего два фрейма: слева users справа start
пробывал подправить стандыртный код, но когда запускал получались лаги - юзеры не отображались, сообщения чата не выводились, а при попытке отправить чтото выскакивало сообщение что я не в чате
хотя визуально оно получилось так как надо
может ктото игрался с таким, подскажите пожалуйста

6600
Александр @admiral
паган пишет:

столкнулся с проблемой
хочу поменять местами фрейм самого чата и фрейм учасников

<frameset rows='0,*,60' border=0>
<frame name=topframe src=top.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
<frameset cols='0,250,*,0' border=0>
<frame name=mleft src=mleft.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frame name=users src=users.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frameset name=sets rows='0,*,0' border=1>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=Yes frameborder=1>
<frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
</frameset>
<frame name=write marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
</frameset>
<frame name=chat src=chat.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
</frameset>

2
паган @паган
дякую за допомогу!

2536
удалён @crigon
Блин, юзайте репу вместо таких постов <_<

274
Павел @DJ_FANTASY
Товарищщи) может поможете) Вот надо добавить фреймик один вот сюда
<frameset name=sets rows='0,*,0' border=1>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=Yes frameborder=1>
<frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
</frameset>

над викториной что бы он висел, я пытался сделать, он получился, но кулючаю викторину и викторины невидно, а выключаю её и тот фрейм тоже выключается. я делал вот так:
<frameset name=sets rows='20,0,*,0' border=1>
<frame name=ref src=ref.html noresize scrolling=no>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=auto frameborder=1> <frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=auto frameborder=1>
</frameset>

2902
serhio @serhio
DJ_FANTASY пишет:

Товарищщи) может поможете) Вот надо добавить фреймик один вот сюда
<frameset name=sets rows='0,*,0' border=1>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=Yes frameborder=1>
<frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
</frameset>

над викториной что бы он висел, я пытался сделать, он получился, но кулючаю викторину и викторины невидно, а выключаю её и тот фрейм тоже выключается. я делал вот так:
<frameset name=sets rows='20,0,*,0' border=1>
<frame name=ref src=ref.html noresize scrolling=no>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=auto frameborder=1> <frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=auto frameborder=1>
</frameset>


ты забыл еще то, что изменение фреймовой системы при включении и выключении викторины осуществляется в скриптах чата в функциях нижнего фрейма... то есть тебе нужно откорректировать еще и этот кусок:

/* Загружает викторину в новом раскрытом фрейме или закрывает (кроме Opera) */
var on=0;
var privatheight=0;
function startgame(){
if(!privatheight) privatheight=parent.privat.document.body.clientHeight;
if(on==0){on=1;
parent.gameframe.location.href='http://mpchat.com:7777/?chat='+chatlogin;
parent.document.getElementsByName('sets')[0].rows="75,*,"+privatheight;
}
else {on=0;
parent.gameframe.location.href='start.html';
parent.document.getElementsByName('sets')[0].rows="0,*,"+privatheight;
}
}

корректировать тут нужно две строки так:

parent.document.getElementsByName('sets')[0].rows="20,75,*,"+privatheight;

parent.document.getElementsByName('sets')[0].rows="20,0,*,"+privatheight;

274
Павел @DJ_FANTASY
Всё бы ничего, но у меня код этот немного другой.. Подскажи друг, что изменить в нём???
/* Загружает викторину в новом раскрытом фрейме или закрывает (кроме Opera < 9.5) */
var gameon=0;
var framepos=0;
var gameheight=75;
function startgame(){
var obj=parent.document.getElementsByName('sets')[0];
var rows=obj.rows.split(',');
if(gameon==0){
parent.gameframe.location.href='http://'+domain+':7777/?chat='+chatlogin;
gameon=1; rows[framepos]=gameheight; obj.rows=rows.join(',');
}
else {
parent.gameframe.location.href='start.html';
gameon=0; rows[framepos]=0; obj.rows=rows.join(',');
}
}

2902
serhio @serhio
DJ_FANTASY пишет:

Всё бы ничего, но у меня код этот немного другой.. Подскажи друг, что изменить в нём???
/* Загружает викторину в новом раскрытом фрейме или закрывает (кроме Opera < 9.5) */
var gameon=0;
var framepos=0;
var gameheight=75;
function startgame(){
var obj=parent.document.getElementsByName('sets')[0];
var rows=obj.rows.split(',');
if(gameon==0){
parent.gameframe.location.href='http://'+domain+':7777/?chat='+chatlogin;
gameon=1; rows[framepos]=gameheight; obj.rows=rows.join(',');
}
else {
parent.gameframe.location.href='start.html';
gameon=0; rows[framepos]=0; obj.rows=rows.join(',');
}
}


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


<frameset name=sets rows='0,20,*,0' border=1>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=auto frameborder=1>
<frame name=ref src=ref.html noresize scrolling=no>
<frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=auto frameborder=1>
</frameset>

274
Павел @DJ_FANTASY
ЗАЧЁТ!!! Всё работает!! Спасибо, друг! +1 !!!!!

Отредактировано DJ_FANTASY - 25.09.2008
588
КоЛеСо @КоЛеСо
как мне отделить один фрейм от другого границей... и убрать не активные полосы прокрутки...?

**********

Отредактировано КоЛеСо - 27.10.2008
2970
удалён @Foggy
Я знаю что можно как-то нажав на ссылку убрать фрейм.... Не подскажете как это осуществить? А-то смайлы хочется во фрейм сделать...

2902
serhio @serhio
Avenger_Inkognito пишет:

Я знаю что можно как-то нажав на ссылку убрать фрейм.... Не подскажете как это осуществить? А-то смайлы хочется во фрейм сделать...

так же, как это сделано для викторины...

2970
удалён @Foggy
Я не понимаю по какому принципу это сделано для викторины.....
<a href=# onclick="parent.startgame(); return false;" title="Викторина - угадывание слов">Викторина</a>
parent.startgame(), а фрейм викторины называется gameframe.....и как это сделать? я стопудово не туды смотрю... но куды смотреть и не знаю...

2902
serhio @serhio
Avenger_Inkognito пишет:

Я не понимаю по какому принципу это сделано для викторины.....
<a href=# onclick="parent.startgame(); return false;" title="Викторина - угадывание слов">Викторина</a>
parent.startgame(), а фрейм викторины называется gameframe.....и как это сделать? я стопудово не туды смотрю... но куды смотреть и не знаю...

начал смотреть ты в правильном направлении... именно со ссылки в нижнем фрейме все начинается...

<a href=# onclick="parent.startgame(); return false;" title="Викторина - угадывание слов">Викторина</a>

ключевое здесь именно parent.startgame(); ... значит нужно найти, где это... parent - это означает, что нужно искать не в данном фрейме, а либо в других фреймах, либо в скриптах... искать нужно startgame(); .... немного потрудившись в поисках можно отыскать эту функцию в скриптах чата... в функциях нижнего фрейма... в стандартном виде она выглядит так:

/* Загружает викторину в новом раскрытом фрейме или закрывает (кроме Opera < 9.5) */
var gameon=0;
var framepos=0;
var gameheight=75;
function startgame(){
var obj=parent.document.getElementsByName('sets')[0];
var rows=obj.rows.split(',');
if(gameon==0){
parent.gameframe.location.href='http://'+domain+':7777/?chat='+chatlogin;
gameon=1; rows[framepos]=gameheight; obj.rows=rows.join(',');
}
else {
parent.gameframe.location.href='start.html';
gameon=0; rows[framepos]=0; obj.rows=rows.join(',');
}
}

что здесь существенного... obj=parent.document.getElementsByName('sets')[0]; - это означает, что работа ведется со строкой из фреймовой системы, которая имеет name='sets' ... открываем фреймовую систему и находим там эту строку:

<frameset rows='0,*,60' border=0>
<frame name=topframe src=top.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
<frameset cols='0,*,0,250' border=0>
<frame name=mleft src=mleft.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
<frameset name=sets rows='0,*,0' border=1>
<frame name=gameframe src=start.html marginwidth=0 marginheight=0 scrolling=Yes frameborder=1>
<frame name=left src=start.html marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
<frame name=privat marginwidth=10 marginheight=5 scrolling=Yes frameborder=1>
</frameset>
<frame name=write marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
<frame name=users src=users.html marginwidth=1 marginheight=1 scrolling=Yes frameborder=no noresize>
</frameset>
<frame name=chat src=chat.html marginwidth=1 marginheight=1 scrolling=no frameborder=no noresize>
</frameset>

нашли... возвращаемся в скрипт и смотрим, что с ней вытворяет демон... rows=obj.rows.split(','); - тут демон из параметров rows='0,*,0' вырезает то, что до первой запятой, то бишь удаляет размер 0 для фрейма викторины... далее строкой parent.gameframe.location.href='http://'+domain+':7777/?chat='+chatlogin; задает адрес, который будет загружен в этот фрейм... а строкой rows[framepos]=gameheight; задает новый размер фрейму викторины... следующая строка obj.rows=rows.join(','); добавляет запятую после нового размера фрейма... и теперь строка фреймовой системы, выделенная мною красным цветом, будет браузером восприниматься так:

<frameset name=sets rows='75,*,0' border=1>

где 75 - это размер фрейма викторины, заданный в переменной var gameheight=75; это все означает, что у фрейма викторины появился не нулевой развер, и в этот фрейм будет загружена соответствующая страница...
при повторном нажатии на ссылку викторины, демон делает обратное преобразование - во фрейм пишется маленький файл start.html, а размер фрейма устанавливается нулевым... для того, чтоб помнить, в каком состоянии находится фрейм викторины, демоном была введена переменная var gameon=0; ... если 1 - фрейм активирован, если 0 - фрейм свернут...
собственно, и все...