Суббота, 23 Ноября 2024, 01:52

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
javascript и iframe
RioluДата: Вторник, 07 Августа 2012, 14:13 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Это фрейм для браузерной игры, в одном чат в другом локация в третьем пользователи он-лайн, а в четвертом ввод сообщения. Задача такова: там где ввод сообщения, есть клавиша вкл и выкл нападения покемонов. Бой будет отображаться в фрейме где локация, но этот фрейм не перезагружается, он не будет знать когда отображать. Включить туда скрипт обновления не выгодно, так как у нас чат постоянно обновляется. Как с помощью обновления чата можно обновлять фрейм локации?

Рoke-x (ММОRPG про покемонов)

gmmmmДата: Вторник, 07 Августа 2012, 15:10 | Сообщение # 2
почетный гость
Сейчас нет на сайте
мб когда чат обновляется сделать что-то вроде window.frames['имя'].location.reload или parent.frames.main.location.reload();
Вот это я нагуглил...и вопрос не очень как-то понятен.
Может предоставите немного кода)


пусто!)
RioluДата: Вторник, 07 Августа 2012, 15:26 | Сообщение # 3
почетный гость
Сейчас нет на сайте
Quote (gmmmm)
мб когда чат обновляется сделать что-то вроде window.frames['имя'].location.reload или parent.frames.main.location.reload();

Щас попробую
world.php
Code
<!DOCTYPE HTML>
<html>      
<head>
<title>Poke-x - World</title>
<script>
function chat_to(code){
   _input.document.getElementsByName('mess_chat')['to_tr_name'].value=code;
   _input.document.getElementsByName('mess_chat')['to_tr_name'].focus();  }
if ($.browser.msie && $.browser.version == '10.0') {
if(confirm(Обновите браузер до последней версии. Мы советуем Firefox. Вы хотите загрузить Firefox?)) {
document.location = 'http://www.mozilla.org/ru/firefox/fx/?from=getfirefox';
}}
</script>
</head>
<?
$date_times = date('Y-m-d H:i:s',time());
$_SESSION['time']=$date_times;
?>
<frameset ROWS='45%,*, 60,0,0,0' FRAMEBORDER=0 FRAMESPACING=0 BORDERCOLOR=#000000>
<frame SRC='./game.php?the=location' NAME='_locations' SCROLLING='AUTO' FRAMEBORDER=0>
<frameset cols='*,280' FRAMEBORDER=0 FRAMESPACING=0 BORDERCOLOR=#000000>  
<frame SRC='./game.php?the=chat' NAME='_chat' SCROLLING='NO' FRAMEBORDER=0>
<frame SRC='./game.php?the=online' NAME='_online' SCROLLING='NO' FRAMEBORDER=0>
</frameset>
<frame SRC='./game.php?the=input' NAME='_input' SCROLLING='NO' FRAMEBORDER=0 NORESIZE>
</frameset>  
</html>


Рoke-x (ММОRPG про покемонов)

gmmmmДата: Вторник, 07 Августа 2012, 15:41 | Сообщение # 4
почетный гость
Сейчас нет на сайте
Проверил на своем хостинге вариант window.frames['_locations'].location.reload(); рабочий и обновляет фрейм.
В моем примере каждую секунду обновляется фрейм локатион и выводится надпись wtf)
Code
var t = setInterval(MyTimer,1000); // после этого каждые 1с будет вызываться функция MyTimer  
  function MyTimer()  
  {  
   // какое-то действие, которое нужно выполнять каждые 1с.  
  window.frames['_locations'].location.reload();
alert("wtf");
  }

Дальше можешь использовать window.frames['_locations'].location.reload(); более конкретно. Например, когда идет функция обновления чата, обновлять и локатион фрейм.


пусто!)
RioluДата: Вторник, 07 Августа 2012, 15:42 | Сообщение # 5
почетный гость
Сейчас нет на сайте
Не работает точнее фрейм _locations не обновляет

Рoke-x (ММОRPG про покемонов)

gmmmmДата: Вторник, 07 Августа 2012, 15:44 | Сообщение # 6
почетный гость
Сейчас нет на сайте
Quote (Riolu)
Не работает точнее фрейм _locations не обновляет

Уверяю код window.frames['_locations'].location.reload(); рабочий, наверное вы его не "в то место впихнули" smile
Проверьте хорошенько.


пусто!)
RioluДата: Вторник, 07 Августа 2012, 15:56 | Сообщение # 7
почетный гость
Сейчас нет на сайте
input.php
Code
<?
$resul = mysql_query("SELECT * FROM `players_the_game` WHERE `username`='{$_SESSION['user']}' and `passw`='{$_SESSION['pass']}' and `email`='{$_SESSION['email']}' LIMIT 1");
$result = mysql_fetch_array($resul);
$my_loc = $result['locations'];
$resul1 = mysql_query("SELECT * FROM `locations` WHERE `id`='{$my_loc}' LIMIT 1");
$result1 = mysql_fetch_array($resul1);
// считаем сколько онлайн  
$sql1='select SQL_CALC_FOUND_ROWS * from `online`';
$res1=mysql_query($sql1);
$count_online=mysql_num_rows($res1);
$on="1";
$base = mysql_query("SELECT COUNT(*) FROM `players_the_game` WHERE `locations`='{$my_loc}' and `on_or_off`='{$on}'");
$row = mysql_fetch_array($base);
$posts = $row[0];  

$onli = '1';
$base_d = mysql_query("SELECT COUNT(*) FROM `players_the_game` WHERE `on_or_off`='{$onli}'");
$rowes = mysql_fetch_array($base_d);
$online = $rowes[0];  
?>
<!DOCTYPE HTML>
<html>      
<head>
<link href=still/poke-x_game.css rel=Stylesheet type=text/css>
<script type="text/javascript">
setTimeout("window.location.reload()",10000);
</script>
<script type="text/javascript">
window.frames['_locations'].location.reload();alert("wtf");
</script>
</head>
<body>
<div id=online><div id=online_t>
<center>
<i><? echo $result1['loc_name'];?><br>В игре: <? echo $online; ?> из них в этой локации: <? echo $posts; ?> <br>
</center>
<?
$resul = mysql_query("SELECT * FROM `players_the_game` WHERE `locations`='{$my_loc}' and `on_or_off`='{$on}'");
while ($result = mysql_fetch_array($resul)){   ?>
<a href='http://poke-x.ru/game.php?the=trener_info&id=<? echo $result['ID'];?>' onclick="window.open('http://poke-x.ru/game.php?the=trener_info&id=<? echo $result['ID'];?>', 'trener_info', 'fullscreen=no,scrollbars=yes,width=400,height=600'); return false;" ><img src='images/online.png' border='0'></a><img src='images/gender<? echo $result['gender'];?>.png' border='0'><font color=<? echo $result['colors_chat'];?>><? echo $result['username'];?> <? if($_SESSION['user']==$result['username']){echo '( Вы )';}else{}?></font><br>
<?}?>
</div></div>
</body>
</html>


Рoke-x (ММОRPG про покемонов)

gmmmmДата: Вторник, 07 Августа 2012, 16:07 | Сообщение # 8
почетный гость
Сейчас нет на сайте
Мб вместо
Code
<script type="text/javascript">    
    setTimeout("window.location.reload()",10000);    
    </script>    
    <script type="text/javascript">    
    window.frames['_locations'].location.reload();alert("wtf");    
    </script>

Сделать что-то вроде
Code
<script type="text/javascript">    
    setTimeout("Timer",10000);    
       
    function Timer()    
    {    
     // какое-то действие, которое нужно выполнять каждые 1с.    
    window.frames['_locations'].location.reload();
alert("Код доступа верный, окно обновляется ;)");
    }    
    </script>




пусто!)

Сообщение отредактировал gmmmm - Вторник, 07 Августа 2012, 16:08
RioluДата: Вторник, 07 Августа 2012, 16:24 | Сообщение # 9
почетный гость
Сейчас нет на сайте
Спс =)

Рoke-x (ММОRPG про покемонов)

VipCatДата: Вторник, 07 Августа 2012, 16:37 | Сообщение # 10
PHP-MasteR
Сейчас нет на сайте
И как работает ?

Проблемы индейцев - вождя не волнуют....
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг