![]() |
onLoad???
Почему не грузится переменная txt в a1?
Timeline: слой action 1 кадр a1.onLoad=function(){ this.txt = "188"; } слой mov лежит a1 2 кадр слой action stop(); слой mov лежит a1 |
Дело в том, что событие onLoad доступно только для мувиклипов, созданных динамическим путем, то есть с помощью attachMovie() или duplicateMovieClip ();
И даже в случае с loadMovie () рекомендуется использовать onClipEvent(load); |
2 Dindin
Бред написал. 2 as_68 А почему ты уверен, что this .txt = "188"; это ссылка на нужный объект. |
2Dimonius по поводу события onLoad:
This handler can be used only with movie clips for which you have a symbol in the library that is associated with a class . If you want an event handler to be invoked when a specific movie clip loads, for example when you use MovieClip.loadMovie() to load a SWF file dynamically, you must use onClipEvent(load) instead of this handler. The latter handler is invoked when any movie clip loads. Не я придумал :) |
Вопрос внимательно прочитал?
|
:) Внимательно. Она не грузиться потому, что событие onLoad для мувиклипа не созданного динамическим путем НЕ НАСТУПАЕТ НИКОГДА.
(Вывод, о том, что a1 - объект не динамический я делаю из того, что он ЛЕЖИТ НА СЛОЕ, то есть помещен на Stage до компиляции MovieClip'a) :) ;) |
Надо меньше пить :D
Это я лоханулся. Сорри. Но this не факт что обращается туда куда надо. |
Re: onLoad???
Цитата:
a1.txt = "188"; |
Про a1.txt="188" я в курсе.
Просто ситуация следующаяя: В _rootе лежат 10 мувиков (a1....a10), которым присваивается по 20 значений (txt1...txt20). Так вот чтобы не писать для каждого a1.txt1=....a1.txt20, хотелось написать a1.onLoad=function(){ this.txt1 = "188"; ... this.txt20 = "388"; } и менять имя мувика и значения txt для каждого . Как этот процесс упростить если onLoad не работает? :confused: для Dimonius Цитата:
a1.onRollOver = function() { txt=this.txt; trace(txt); } РАБОТАЕТ!!! |
Читай ответы внимательнее. Событие onLoad в твоем случае не наступает. А кроме того - какая тебе разница где передавать двадцать значений - в функции или вне ее. (разве что когда ты это делаешь в функции - кода получается больше)
Если у тебя значения статические, то тебе в любом случае придется присваивать их вручную. Двадцать раз. Вот если динамические - совсем другое дело. |
Если я тебя правильно понял (ох, тяжкий это труд домысливать то, что неточно выразили), то дебе нужно задать двадцать переменных для объектов, которые называются a1,a2...a20. Причем первая переменная имеет значение 188, вторая - 198 (188+10), третья - 208 (198+10) и т.д с шагом 10.
тогда делаешь так numObjects = 20; currentVar = 188; step =10; for (var i=0;i<numObjects;i++) { _root['a'+i].txt = currentVar; currentVar +=step; } |
Цитата:
Цитата:
Пришлось набивать ручками. :D А хотелось побыстрее - скопировал, поменял только в одном месте имя мувика, и перебил значения переменных. |
Вложений: 1
Цитата:
Ну, это если плохо попросить… А, вот если попросить хорошо, умеючи, - то наступает. Эту фичу надо бы знать. :) |
Вложений: 1
2as_68
Посмотри этот пример. Надеюсь, он поможет. В том случае, если значения текстовых полей рэндомны, то их сначала надо загнать в массивы, а потом выдергивать их оттуда. |
sergwizard, уел :)
|
| Часовой пояс GMT +4, время: 08:12. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.