Цитата:
При клике на 1 добавляется 13 как зависимость к 1, как я понял. При повторном клике две картинки под этими айдишниками удаляются, и массив соответственно. |
Цитата:
а по поводу моей проблемы, я видимо тупой, несколько раз перечитал ваш ответ, ну никак не могу понять почему условие if (obj==13) {set_car_obj(1,0);} не удалит 1 айди, ну реально, вот чувствую что истина гдето рядом но никак не могу её увидеть, да и к тому же на сторонней функции поиска по массиву почему всё работает тогда? |
Цитата:
|
Цитата:
|
Цитата:
Ладно, огромное спс за помощь вам и Nexus, конечно хотелось бы разобраться но чувствую не получится |
Цитата:
Написал html чтобы разобраться. В первом аргументе передается строка, а не число, поэтому проблемы с индексацией. В строку 13 нужно добавить obj = +obj var arr = ["13", 1]; alert(arr.indexOf(13)); |
Цитата:
if (obj==1) {set_car_obj(13,0);} if (obj==13) {set_car_obj(1,0);} |
Цитата:
Клик на 1. Передаем в функции строку 1, потом второй вызов функции с числом 13. Массив ["1", 13]; Второй клик на 1. Cнова передаем строку 1, удаляем "1" из массива, потом программа передает 13 и удаляет число 13. При клике на 13 аналогично, только наоборот ["13", 1]. Если кликнуть на 1, потом на 13 получим массив - ["1", 13, "13", 1]. Т.е теперь при клике на 13 передается строка "13" а в массиве число 13, повторный вызов функции передает число один а в массиве строка "1". Поэтому добавляются две новые картинки, а не удаляются. Вот третий клик уже находит элементы в массиве и удаляет две последние картинки. Когда кликаем при первом вызове передается строка из атрибута, а не число. Второй вызов передает всегда число. |
Часовой пояс GMT +3, время: 07:40. |