Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Подгрузка в див текста из php через java (https://javascript.ru/forum/jquery/32699-podgruzka-v-div-teksta-iz-php-cherez-java.html)

blyskawka 26.10.2012 03:09

Подгрузка в див текста из php через java
 
О как)
Незнаю правильно или нет, но вроде работает
<script type="text/javascript">
$(document).ready(function ()
{$('#reklamisty').load('quotes.php');});
</script>

Это у меня отвечает за подгрузку в див #reklamisty текста из quotes.php
В quotes.php лежит следующее
<?php
echo "цитаты известных рекламистов";
?>
Но хочу сделать чтоб не просто подгружалась одна фраза, а несколько и они сменялись друг за другом с интервалом в несколько секунд, что-то по типу слайдера, только просто один текст заменяется другим текстом с затуханием. Как это можно сделать?

rockerror 06.11.2012 22:15

Наверное лучше всего сразу возвращать из пыха json массив/объект с нужными хтмльками и потом js-ом его перебирать. А если данные на серваке постоянно обновляются, юзайте аякс также по интервалу.

rockerror 06.11.2012 23:44

Вот вам пример php:
$text_variants = array("text1", "text2", "text3", "text4");
$respond = json_encode($text_variants);
echo $respond;


А вот вам пример js:
var dataLoader = "your-php-script.php";
var curId = 0;
var intervalId = 0;
var interval = 1000; // интервал смены текста в миллисекундах
var text_array = new Array();

function changeText()
{
   $('#reklamisty').html(text_array[curId]);
   curId = ( ++curId > text_array.length - 1 ) ? 0 : curId;
}

$(document).ready(fucntion(){
    $.ajax({
        type: 'POST',
        cache: false,
        url: dataLoader,
        data: {},
        success: function(data)
        {
            text_array = eval("(" + data + ")");
            intervalId = setInterval(changeText, interval);
         },
         async: false
    });
});


а если в какой-то момент нужно остановить прокрутку текстов, сделайте clearInterval(intervalId);

С затуханием сами разберетесь? Любой эффект вот тут прикручивайте: $('#reklamisty').html(text_array[curId]);

ЗЫ код не тестил, но вроде должно работать...


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