Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   HTML/DHTML/CSS/JS/VB (http://www.flasher.ru/forum/forumdisplay.php?f=66)
-   -   FLASH & JS | SetVariable(); (http://www.flasher.ru/forum/showthread.php?t=73988)

Elodreid 09.01.2006 00:09

FLASH & JS | SetVariable();
 
Как понял что бы послать что-то в флеш надо использовать SetVariable();, только не как не сделаю скрипт что бы посылал клипу (ID="suite") mx и my. Делаю так:
Код:

<script language="javascript" type="text/javascript">
        var my = 0;
        var mx = 0;
        mx=event.clientX;
        my=event.clientY;
        function send() {
                document.suite.SetVariable("my",my);
                document.suite.SetVariable("mx",mx);
        }
        function moveMouse(){
       
                stat('x: '+mx+'  y: '+my);
        }
</script>
<body>
<script event=onmousemove for="document">
        mx=event.x;
        my=event.y;
        send();
</script>

Почему не пашет? :(

undeddy 09.01.2006 09:24

Зачем ты определил одинаковые переменные mx и my как во Flash, так и в JavaScript?
Теперь объясни вот этот код:
Цитата:

function moveMouse(){

stat('x: '+mx+' y: '+my);
}
</script>
<body>
<script event=onmousemove for="document">
mx=event.x;
my=event.y;
send();
</script>

Elodreid 09.01.2006 14:19

Да хз.. из книги вытащил :)
Там пример "Картинка следующая за курсором" ну там так сделано :)

Elodreid 09.01.2006 14:20

А еще.. что надо во флеше писать? Чтобы переменые принять?

Crazy 09.01.2006 15:54

Цитата:

Сообщение от undeddy
Зачем ты определил одинаковые переменные mx и my как во Flash, так и в JavaScript?

А это имеет значение?

undeddy 09.01.2006 18:54

Цитата:

Сообщение от Crazy
А это имеет значение?

А шут его знает, видимо не в этом дело.
Цитата:

Сообщение от Elodreid
А еще.. что надо во флеше писать? Чтобы переменые принять?

Ничего, достаточно вызвать функцию из JavaScript.

P.S. И все-таки, мне непонятен этот код совершенно:
Код:

function moveMouse(){
stat('x: '+mx+' y: '+my);
}
</script>
<body>
<script event=onmousemove for="document">
mx=event.x;
my=event.y;
send();
</script>


Elodreid 09.01.2006 18:59

Ну просто напиши как сделать тогда :(
stat(); вроде как статус меняет

undeddy 09.01.2006 19:39

По-моему надо вот так (конечно, если тебе только надо передать значения переменных mx и my во Flash):
Код:

var my = event.clientY;
var mx = event.clientX;
document.suite.SetVariable("my",my);
document.suite.SetVariable("mx",mx);

Но помни: значение этих переменных передадутся один раз (!), то есть передадутся те координаты мыши, которые будут получены при входе на страницу. Если тебе необходимо, чтобы значения этих переменных передавались постоянно (то есть обновлялись), то используй метод setInterval().

P.S. Там ты говорил что-то про статус. Если ты подразумеваешь под этим понятием строку состояния в окне веб-обозревателя, то используй свойство window.status = "то_что_отображается_в_строке_состояния".

Elodreid 09.01.2006 20:42

а можно подробней про setInterval? А так работать не будет
Код:

<script>
function send() {
        var my = event.clientY;
        var mx = event.clientX;
        document.suite.SetVariable("my",my);
        document.suite.SetVariable("mx",mx);
}
</script>
<body onmousemove=send()>


Elodreid 09.01.2006 20:51

Сделал вот так:
Код:

<script>
function send() {
        var my;
        var mx;
        mx = event.clientX;
        my = event.clientY;
        document.suite.SetVariable("my",my);
        document.suite.SetVariable("mx",mx);
        window.status = "x: "+mx+", y: "+my;
}
</script>
<body style="cursor: url(pics/cur.cur);" onmousemove="send()">

Но во флеше все равно x: undefined y: undefined, хотя в статусе x: xxx, y: xxx


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

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