Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   КАК ПЕРЕЗАГРУЗИТЬ СЛОЙ ЧТО БЫ ОБНОВИЛСЯ JS БЕЗ ПЕРЕЗАГРУЗКИ СТРАНИЦЫ??? (https://javascript.ru/forum/misc/39741-kak-perezagruzit-slojj-chto-obnovilsya-js-bez-perezagruzki-stranicy.html)

zozozozo 10.07.2013 08:37

КАК ПЕРЕЗАГРУЗИТЬ СЛОЙ ЧТО БЫ ОБНОВИЛСЯ JS БЕЗ ПЕРЕЗАГРУЗКИ СТРАНИЦЫ???
 
КАК ПЕРЕЗАГРУЗИТЬ СЛОЙ ЧТО БЫ ОБНОВИЛСЯ JS БЕЗ ПЕРЕЗАГРУЗКИ СТРАНИЦЫ???

Этот скрипт формируется на сайте1 а выводится на сайте2. КАК ПЕРЕЗАГРУЗИТЬ СЛОЙ НА САЙТЕ2 ЧТО БЫ ОБНОВИЛСЯ JS (который находится в слое <div id="perezagryzka">) БЕЗ ПЕРЕЗАГРУЗКИ СТРАНИЦЫ???

document.write('<script>var numberclick=0; function clickmoreone(){ numberclick++; if(numberclick>1) document.getElementById(\"ball2\").src="www.moisait.ru"; document.getElementById("perezagryzka").src;};<\/script>');




document.write('<div id="popShow2";><div style="display:scroll; position:fixed; width: 100%; height: 100%; z-index: 1; left: 0px; id="ball"; onmouseover="clickmoreone();">куку</div><div id="perezagryzka"><script>var urlsait=""; {if urlsait="<?php print "$url1"; ?>"; {document.getElementById("popShow2").style.display="none";<\/script></div></div>');

zozozozo 10.07.2013 09:14

Скрипт срабатывает только после перезагрузки страницы, а как его сделать что бы срабатывал без перезагрузки???
<script>var urlsait=""; {if urlsait="<?php print "$url1"; ?>"; {document.getElementById("popShow2").style.display="none";<\/script>

skrudjmakdak 10.07.2013 09:14

что в предыдущем вопросе было не понятно, что в этом..
можете показать как генерируется список на сайте 1?
и полностью вашу страницу на сайте 2 от <html> до </html>

skrudjmakdak 10.07.2013 09:15

угу, а теперь подробней о $url1.
покажите ваш php код..

цитата: "можете показать как генерируется список на сайте 1?
и полностью вашу страницу на сайте 2 от <html> до </html>"
- этого теперь не надо.. просто ваш php код где идет работа с переменной $url1

zozozozo 10.07.2013 09:28

<?php
$get_sql2 = mysql_query("SELECT  `url` FROM `a_tab` WHERE `view` != '$viw' ORDER BY `stopor` DESC ");   
	$roww2 = mysql_fetch_array($get_sql2);
	$url = $roww2['url'];

if ($url =="") {  
 }else {   
    $url1 = $url;      
 }
?>




document.write('<script>var numberclick=0; function clickmoreone(){ numberclick++; if(numberclick>1) document.getElementById(\"ball2\").src="www.moisait.ru"; document.getElementById("perezagryzka").src;};<\/script>');




document.write('<div id="popShow2";><div style="display:scroll; position:fixed; width: 100%; height: 100%; z-index: 1; left: 0px; id="ball"; onmouseover="clickmoreone();"><iframe scrolling="no" width="500" height="500" align="left" src="www.moisait.php" frameborder="0" border="0""><\/iframe></div><div id="perezagryzka"><script>var urlsait=""; {if urlsait = "<?php print "$url1"; ?>"; {document.getElementById("popShow2").style.display="none";<\/script></div></div>');


Список не формируется. Извеняюсь. Сам запутался.
Мне просто нужно как то перезагрузить js (который находиться в слое <div id="perezagryzka">) без перезагрузки страницы на сайте2???

skrudjmakdak 10.07.2013 09:39

подключаем jquery, дабы с ним проще работать:
<script type="http://code.jquery.com/jquery-1.10.2.min.js"></script>
и пишем аякс запрос:
<script type="text/javascript">
$(document).ready(function(){
var getUrl = function ()
{
 $.ajax({
   type: "POST",
   url: "getUrl.php",
   success: function(msg){
     console.log(msg);
     //вот эту msg и нужно использовать для проверки
    if (msg == 'urlsait')
            document.getElementById("popShow2").style.display="none";
   }
 });
}

setInterval(getUrl, 5000); //интервал запроса 5 секунд
});
</script>


п.с. danik утверждает, что лучше писать скрипты перед </body>.))

danik.js 10.07.2013 09:39

А зачем тут document.write ?

skrudjmakdak 10.07.2013 09:40

ну а в файле getUrl.php необходимо вывести ваш $url1:
<?php
$get_sql2 = mysql_query("SELECT `url` FROM `a_tab` WHERE `view` != '$viw' ORDER BY `stopor` DESC ");
$roww2 = mysql_fetch_array($get_sql2);
$url = $roww2['url'];

if ($url =="") {
}else {
$url1 = $url;
}
?>

danik.js 10.07.2013 09:40

Цитата:

Сообщение от skrudjmakdak
document.getElementById("popShow2").style.display= "none"

Ха, а jQuery зачем подключал тогда?

skrudjmakdak 10.07.2013 09:40

Цитата:

Сообщение от danik.js (Сообщение 261478)
А зачем тут document.write ?

это для меня тож загадка

danik.js 10.07.2013 09:41

skrudjmakdak, если подключить перед </body> то ждать $(document).ready не нужно :)

skrudjmakdak 10.07.2013 09:41

Цитата:

Сообщение от danik.js (Сообщение 261480)
Ха, а jQuery зачем подключал тогда?

потому что я просто тупо скопировал код, не правив..

danik.js 10.07.2013 09:42

zozozozo одна сплошная загадка. Видимо школота решила каникулы с пользой провести )))

skrudjmakdak 10.07.2013 09:43

Цитата:

Сообщение от danik.js (Сообщение 261482)
skrudjmakdak, если подключить перед </body> то ждать $(document).ready не нужно :)

вы что, издевайтесь на домной??

skrudjmakdak 10.07.2013 09:49

Цитата:

Сообщение от danik.js (Сообщение 261484)
zozozozo одна сплошная загадка. Видимо школота решила каникулы с пользой провести )))

что в этом плохого? может и вырастит с него программер.. пополнит наши ряды

danik.js 10.07.2013 09:50

Цитата:

Сообщение от skrudjmakdak
вы что, издевайтесь на домной??

Нет, я серьезно. Ждать $(document).ready не нужно. Ибо весь DOM уже сформирован. Кроме низлежащих скриптов.

zozozozo 10.07.2013 09:50

Цитата:

Сообщение от skrudjmakdak (Сообщение 261481)
это для меня тож загадка

слой и все остальное не выводится на сайт2
на сайте1 показывается, а на сайте2 не хочет

skrudjmakdak 10.07.2013 09:53

Цитата:

Сообщение от zozozozo (Сообщение 261488)
слой и все остальное не выводится на сайт2
на сайте1 показывается, а на сайте2 не хочет

почитайте про аякс.
смысл его в том, что он посылает запросы на сервер без перезагрузки страницы. сервер генерит ответ и отдает обратно браузеру, после чего браузер эти данные обрабатывает как ему надо

zozozozo 10.07.2013 09:54

Цитата:

Сообщение от skrudjmakdak (Сообщение 261477)
подключаем jquery, дабы с ним проще работать:
<script type="http://code.jquery.com/jquery-1.10.2.min.js"></script>
и пишем аякс запрос:
<script type="text/javascript">
$(document).ready(function(){
var getUrl = function ()
{
 $.ajax({
   type: "POST",
   url: "getUrl.php",
   success: function(msg){
     console.log(msg);
     //вот эту msg и нужно использовать для проверки
    if (msg == 'urlsait')
            document.getElementById("popShow2").style.display="none";
   }
 });
}

setInterval(getUrl, 5000); //интервал запроса 5 секунд
});
</script>


А просто перезагрузить скрипт в слое <div id="perezagryzka"> нельзя никак???

<div id="perezagryzka"><script>var urlsait=""; {if urlsait="<?php print "$url1"; ?>"; document.getElementById("popShow2").style.display="none";<\/script></div>

skrudjmakdak 10.07.2013 09:55

Цитата:

Сообщение от danik.js (Сообщение 261487)
Нет, я серьезно. Ждать $(document).ready не нужно. Ибо весь DOM уже сформирован. Кроме низлежащих скриптов.

да ладно???? )))

skrudjmakdak 10.07.2013 09:56

Цитата:

Сообщение от zozozozo (Сообщение 261491)
А просто перезагрузить скрипт в слое <div id="perezagryzka"> нельзя никак???

читайте аякс!!!

zozozozo 10.07.2013 10:00

Цитата:

Сообщение от skrudjmakdak (Сообщение 261493)
читайте аякс!!!

Тожет так пойде???

<script src="http://code.jquery.com/jquery.js"></script>
<script type="text/javascript">
function clickmoreone() {$.post("http://moisait.php");
});
});
</script>

danik.js 10.07.2013 10:02

Цитата:

Сообщение от zozozozo
http://moisait.php

Че, уже и такие доменные зоны появились? круто)

skrudjmakdak 10.07.2013 10:05

http://moisait.php - что это за урла то такая?? может уж тогда http://moisait.ru/get1.php

тогда:
$.post("get1.php", function(data){//функция в любом случае нужна, вы же ответ будете как то обрабатывать.. смысл того что сделали запрос и получив его не обработали его??
  alert("Data Loaded: " + data);
});

skrudjmakdak 10.07.2013 10:20

вот лично для вас рабочий вариант раз уж так туго идет:
файл index.html

<html>
	<head>
		<title>123</title>
	</head>
<body>
  <div id="response"></div>
  
	<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
	<script type="text/javascript">
	res = $('#response');
	function send()
		{
		$.post("get.php", function(data)
			{
			res.html(data);
			});

		}

	setInterval(send, 2000);
	</script>
</body>
</html>


файл get.php
<?=rand(1, 1000);?>

Shaci 11.07.2013 00:54

Цитата:

Сообщение от danik.js (Сообщение 261487)
Нет, я серьезно. Ждать $(document).ready не нужно. Ибо весь DOM уже сформирован. Кроме низлежащих скриптов.

skrudjmakdak, danik правду говорит, я почти всегда скрипт перед закрывающим боди ставлю

ruslan_mart 11.07.2013 06:42

Цитата:

Сообщение от zozozozo
А просто перезагрузить скрипт в слое <div id="perezagryzka"> нельзя никак???

$('#perezagryzka').load(window.location.href + ' #perezagryzka');

skrudjmakdak 11.07.2013 08:39

Цитата:

Сообщение от Shaci (Сообщение 261690)
skrudjmakdak, danik правду говорит, я почти всегда скрипт перед закрывающим боди ставлю

посмотрите на мой код повнимательней)


Часовой пояс GMT +3, время: 07:01.