iframe и jquery

Статус
В этой теме нельзя размещать новые ответы.

Dj_StelS

Гуру форума
Регистрация
9 Янв 2009
Сообщения
349
Реакции
80
Есть index.php в котором создается iframe с помощью jquery:
Код:
setTimeout(function(){
			iframe("url.php");
		}, 500);
function iframe(src){
$('<iframe>').attr('id', 'iframe')
		.css({
			position: 'absolute',
			top: 0,
			left: 0,
			visibility: 'hidden',
			display: 'none'
		})
		.attr('src', src)
		.appendTo('#iframes');
		
}

в url.php:
PHP:
	echo '<script language="JavaScript">$("#body").append("11");</script>';
но почему то в тело #body не добавляется текст 11...
Пробывал уже так:
PHP:
	echo '<script language="JavaScript">$("#body").parent().append("11");</script>';

но всё равно не работает.
подскажите в чем ошибка?
 
Ошибка в том, что $("#body").append("11"); просто так изменять документ не будет если его нет в $.documents.
 
Ошибка в том, что $("#body").append("11"); просто так изменять документ не будет если его нет в $.documents.
непонял,
Код:
 $(document).ready(function() {
setTimeout(function(){
			iframe("url.php");
		}, 500);
function iframe(src){
$('<iframe>').attr('id', 'iframe')
		.css({
			position: 'absolute',
			top: 0,
			left: 0,
			visibility: 'hidden',
			display: 'none'
		})
		.attr('src', src)
		.appendTo('#iframes');
}
 });
так не выходит, и так
PHP:
echo '<script language="JavaScript">$(document).ready(function() {$("#chat_body").append("11"); });</script>';

или я что то неправильно понял? сорри, но я jquery только начал изучать
 
Во фрейме тоже должен быть подгружен jquery, а там через parents() и contents() манипулировать главным элементом, а получится или нет это еще вопрос.
 
Во фрейме тоже должен быть подгружен jquery, а там через parents() и contents() манипулировать главным элементом, а получится или нет это еще вопрос.
подгрузил jquery, попробывал с parents() и contents() резульятата 0
Самое необъяснимое для меня:
PHP:
echo '<script language="JavaScript">parent.document.getElementById("body").innerHTML = "11";</script>';
работает.
Но мне надо именно через jquery
Может кто еще поможет?
 
непонял,
Код:
 $(document).ready(function() {
setTimeout(function(){
			iframe("url.php");
		}, 500);
function iframe(src){
$('<iframe>').attr('id', 'iframe')
		.css({
			position: 'absolute',
			top: 0,
			left: 0,
			visibility: 'hidden',
			display: 'none'
		})
		.attr('src', src)
		.appendTo('#iframes');
}
 });
Такое не будет работать, потому что вы пытаетесь выбрать пустой элемент $('<iframe>') - такого никогда не будет, а вот такой будет: $('iframe')
 
Такое не будет работать, потому что вы пытаетесь выбрать пустой элемент $('<iframe>') - такого никогда не будет, а вот такой будет: $('iframe')
если сделать так - то загрузка вобще не начинается.
ведь функция iframe динамически создаёт ифреймы и вставляет их в див #iframes
 
Назовите функцию по другому, а не так как элемент HTML-разметки, будет проще :)
 
Назовите функцию по другому, а не так как элемент HTML-разметки, будет проще :)
что то изменится?)) Я не думаю, но раз так проще будет, то еще раз объясняю:)
index.php
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Главная</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
 $(document).ready(function() {
setTimeout(function(){
			iframe1("url.php");
		}, 500);
function iframe1(src){
$('<iframe>').attr('id', 'iframe1')
		.css({
			position: 'absolute',
			top: 0,
			left: 0,
			visibility: 'hidden',
			display: 'none'
		})
		.attr('src', src)
		.appendTo('#iframes');
		
}
 });
</script>
</head>

<body>
<div id="body"></div>

<div id="iframes"></div>

</body>
</html>

url.php
HTML:
<?php set_time_limit(0);
while (@ob_end_flush()) {}
ob_implicit_flush(1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Документ без названия</title>
<script type="text/javascript" src="js/jquery.js"></script>
</head>

<body>
<?php
  while(true) {
    
	echo '<script language="JavaScript">$("#body").append("11");</script>';
    sleep(1);
  }
 
?>
</body>
</html>

почему не выводит 11?
 
а где у вас в url.php элемент с ID=body? выводится то будет применительно к тому документу внутри которого запускается скрипт.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху