![]() |
Как сложить команду?
Подскажите плз можно ли заставить работать например такую строку:
i="play"; a=10; "gotoAnd" + i + "(" + a + ");" Спасибо. |
i="Play";
a=10; this["gotoAnd"+i](a); или mc["gotoAnd"+i](a), где mc - клип, который должен перескочить на 10-й кадр. Не забудь, что "Play" надо писать с большой буквы. |
Хотел попроще. Но похоже не лучший пример привел...
А вот так: nodesTest=""; for (i=1; i<=3; i++) { nodesTest=nodesTest+".childNodes[0]"; } this.nodesTest.nodeName - не работает. eval("this."+nodesTest+".nodeName") - тоже не хочет. Или там все СОВСЕМ по другому надо? |
не хочет eval, собака, квадратные скобки обрабатывать как надо. Через точку работает (в 5-ке, 6-ке и 7-ке):
node1=new XML(); node2=new XML(); node3=new XML(); node4=new XML(); node1.nodeName="first"; node2.nodeName="second"; node3.nodeName="third"; node4.nodeName="fourth"; node2.appendChild(node1); node3.appendChild(node2); node4.appendChild(node3); nodesTest="node4"; for (i=0; i<4; i++) { trace(eval(nodesTest+".nodeName")); nodesTest=nodesTest+".childNodes.0"; } но выглядит как-то некорректно. И this[...] это не переваривает... Я бы так делать не стал, решил бы задачу как-то по-другому. |
Не понимаю
Не понимаю я вас что-то, а зачем ваще такие сложные пути нужны, понимаю если переменная это имя или номер кадра, а "PLAY" тут зачем ? :confused:
|
Цитата:
|
Возможно, я не совсем срубил фишку, но по-моему, так - правильнее:
Код:
node1=new XML(); |
Не срубил.
Смысл был в том, чтобы сделать текстовую "насадку" и применять ее к разным нодам. deepNode=""; for (i=0; i<depth; i++) deepNode=deepNode+".childNodes.0"; trace(eval("node1"+deepNode+".nodeName")); trace(eval("node2"+deepNode+".nodeName")); trace(eval("node3"+deepNode+".nodeName")); |
1)
Код:
deepNode="";Код:
node1=new XML();Код:
node1=new XML(); |
Мнэээээ... Как бы объяснить-то.... И надо ли....
Допустим, такая задачка. Пример дурацкий, конечно, но тут сложно придумать что-то подходящее. Пусть надо написать ф-ю, которая вытаскивает имя нода из хмл элемента, причем заранее неизвестно с какой глубины вложенности и какой по счету нод. Принимаемые значения - XML-объект (пусть это будет корневой элемент) и путь к ноду: function getNodeName(XMLrootelement, path){ ... } path может быть и childNodes[0], и childNodes[3].childNodes[0], и childNodes[5].lastChild.previousSibling - какой угодно и заранее неизвестный. Так вот задачка - что писать внутри фигурных скобок, чтобы присовокупить этот заранее неизвестный path к заранее неизвестному XMLrootelement. По нашей методе получается так: return eval("XMLrootelement"+path+".nodeName"), причем path - текстовый, с точками вместо квадратных скобок у массивов. Из-за которых, собсно, весь сыр-бор. Твоя задача - придумать более приличный вариант ;) |
| Часовой пояс GMT +4, время: 23:44. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.