![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Feb 2006
Сообщений: 588
|
function SortMas() {
for(dl = 0; dl <= BSKDel.length-1; dl++) {
bx = typeof(BSKDel[dl]);
if(bx != movieclip ) {
// ЗДЕСЬ Я ПРИДУМАЮ КАК ПЕРЕСЧИТАТЬ МАССИВ, А ВОТ КАК ОТЛОВИТЬ ЭТОТ УДАЛЕННЫЙ МУВИК ИЛИ ОСТАВШЕЕСЯ МЕСТО ИЗ ПОД НЕГО???
}
BSKDel[dl]._visible = true;
BSKDel[dl]._x = 20;
BSKDel[dl]._y = 10+dl*20;
//trace(bx);
}
trace(BSKDel.length);
}
function MASDel() { // ФУНКЦИЯ ОТЛОВА НАЖАТИЯ НА МУВИК
for(dl = 0; dl <= BSKDel.length; dl++) {
BSKDel[dl].onRelease = function() { this.removeMovieClip(); BSKDel.splice(dl, 1); SortMas();}
}
}
|
|
|||||
|
перефразируя этот сумбурный текст, твой вопрос по сути - "как удалить из массива элемент"?
я правильно понял? |
|
|||||
|
Регистрация: Feb 2006
Сообщений: 588
|
Совершенно верно. Как удалить конкретный элемент из массива в данном случае?
Последний раз редактировалось sem1313; 13.03.2006 в 04:41. |
|
|||||
|
|
|
|||||
|
Banned
[+1 16.05.2006]
[++1 16.05.2006] [+ 1 21.05.06] [++ за хамство] [+1 21.05.2006] Регистрация: Dec 2003
Сообщений: 3,925
|
|
|
|||||
|
Регистрация: Feb 2006
Сообщений: 588
|
2Король и Антарес, спасибо. Но это не срабатывает. Я знаю как удалить элемент из массива, но суть в том, что это можно сделать, если ты знаешь с какой позиции нужно удалить элемент. Array.splice(n, 1) - работает, когда n-определена, но в том то вся и загвоздка, что n в цикле for не может быть определена, выдает - undefnined.
for(dl = 0; dl <= BSKDel.length-1; dl++) {
BSKDel[dl].onRelease = function() {
as = String(this);
trace(dl); // ВЫДАЕТ UNDEFINED
trace(as); // ВЫДАЕТ _level0.MovClip1_mc.Dubl1 - например
trace(as.slice(-1,1)); //ВООБЩЕ НИЧЕГО НЕ ВЫДАЕТ
this.removeMovieClip();
BSKCol[dl].removeMovieClip();
BSKDel.sort();
BSKDel.shift();
}
}
Я решил попробовать таким способом. Мувики дублируются, и к их идентификаторам в конце приписывается номер, который с каждым последующим дублированием увеличивается на единицу(_level0.MovClip1_mc.Dubl1 - например). Так вот мне нужно, всего то, узнать этот номер. Он и будет порядковым номером элемента в массиве. Но и тут облом. as = this, и последующее приведение к типу String срабатывает, и прекрасно записывается в переменную. Задача упрощается до нельзя. Нужно выципить число, стоящее в конце строки. Тут должно работать as.slice(-1,1), но ни чего не происходит. Даже trace не выводит результат. Окошко появляется, но ни чего в нем нет(!)... У меня следующий вопрос, как из ссылки(_level0.MovClip1_mc.Dubl1) получить значение цифры, стоящей в конце? Мож кто знает другой вариант решения этой (думаю все уже поняли о чем речь) ситуации? |
|
|||||
|
Кнут, том третий! Бугогагага
А вообще ты уверен что тебе оно вообще надо? Хэширование рулит ![]()
__________________
...я люблю людей!.. |
|
|||||
|
Ветеран форума
|
сделать из этого строку _level0.MovClip1_mc.Dubl1 узнать длинну (length) и выдрать последний символ , короче что то в этом роде
__________________
BestMasterиZация |
|
|||||
|
Регистрация: Feb 2006
Сообщений: 588
|
Выдрать последний символ из обычной строки - легко. Задача, как эту строку сделать. Она делается(as = String(this)
, но толку то. С переменной as ничего нельзя сделать(выдрать символ). |
|
|||||
|
this._name если очень хочется... Но ведь можно переменную и внутрь засунуть
Только что толку? После удаления элемента позиции сместятся, поэтому советую не удалять элемент вообще, а просто очищать его.
__________________
...я люблю людей!.. |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:38. |
|
|
« Предыдущая тема | Следующая тема » |
|
|