Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Замкнутая бегущая строка (http://www.flasher.ru/forum/showthread.php?t=132179)

keep 05.11.2009 21:11

Замкнутая бегущая строка
 
Как сделать чтобы бегущая строка бегала по кругу?

Код AS1/AS2:

var t_str = variable;
 
 changeStr1 = function() {
    t_str = (t_str.concat(t_str.substr(0,1))).substr(1);
    ta.text = t_str;
 }
 
 setInterval(changeStr1,100);

variable постоянно меняется.
ta.text имя текстового поля

Скрипт прокручивает текст, но не по кругу а сначала... не могли бы Вы помоч?

udaaff 06.11.2009 03:14

А по кругу -- это как?

keep 06.11.2009 13:12

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

udaaff 06.11.2009 13:48

Вложений: 1
По-моему, все и так по кругу бегает...

keep 06.11.2009 14:30

хм.. видимо мне надо было уточнить код...

Код AS1/AS2:

var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(success:Boolean) {
        if (success) {
                for (var variable:String in this)
                {
                        trace(variable + ': ' + this[variable]);
                        // где variable - имя переменной
                        // this[variable] - ее значение
 
 
                }
        } else {
                trace("Ошибка в загрузке / разборе результирующей строки.");
        }
};
my_lv.load("http://vizplast.ru/teg.php");
 
my_lv.onLoad = function(success:Boolean) {
        if (success) {
                for (var variable:String in this)
                {
                        if(variable != 'onLoad')
                        {
//прокрутка
 
var t_str =  variable;
 
 changeStr1 = function() {
    t_str = (t_str.concat(t_str.substr(0,1))).substr(1);
    ta.text = t_str;
 }
 
 setInterval(changeStr1,100);
//---
 
                        }
 
                }
        }
}

тут строка по кругу не бегает, к сожалению, а начинается сначала.

udaaff 06.11.2009 15:52

hint: Текст, который вы получаете, заканчивается символом "\n".

keep 06.11.2009 17:10

аа... т.е. фактически начинается с новой строки ) остаёться только узнать как удалить её из переменной...

udaaff 06.11.2009 17:52

В общем случае (удаление всех символов "\n"):
Код AS1/AS2:

var s:String = "asdf\n1234\nasdf";
s = s.split("\n").join("");

В частном:
Код AS1/AS2:

s = s.substr(0, s.length - 1);


keep 06.11.2009 18:03

Большое человеческое СПАСИБО, udaaff! =)


Часовой пояс GMT +4, время: 03:29.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.