Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2013, 20:41   #1
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию игра пятнашки

помогите пожалуста с пятнашками.

Написал поле а как перемешать и потом перемещать незнаю

Код:
        <script>        
            N = 4;
            ar = new Array();
            for (i = 0; i<16;i++)
                ar[i] = new Array();
            str = ' ';
            str += '<table border="10px" width="400px" height="400px" bgcolor="aaff66">';
            for (i = 0; i < N; i++) {   
                for (j = 0; j < N; j++) {
                    
                    count = i * N + j + 1;
                    if(count<16)
                        str += '<th bgcolor="#aa9944" >' + count + '</th>';
                }
                str += '</tr>';
            }
            str += '</table>';
            document.getElementById('box').innerHTML = str;
       </script>
обьясните плиз очень надо

Последний раз редактировалось mixon-21; 17.12.2013 в 22:10.
mixon-21 вне форума Ответить с цитированием
Старый 18.12.2013, 12:06   #2
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

Подскажите пожалуста как перемешать пятнашки????
mixon-21 вне форума Ответить с цитированием
Старый 18.12.2013, 23:49   #3
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

Никто не знает????
mixon-21 вне форума Ответить с цитированием
Старый 19.12.2013, 01:10   #4
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

все знают, сказать боятся
Код:
N = 4;
var vals = (new Array(16)).join(' ').split(' ').map(function(a,i){console.log(a);return i||''}).sort(function(){return Math.random()-.5});
            str = ' ';
            str += '<table border="10px" width="400px" height="400px" bgcolor="aaff66">';
            for (i = 0; i < N; i++) {   
                for (j = 0; j < N; j++) {
                    
                    count = i * N + j;
                    if(count<16)
                        str += '<th bgcolor="'+(vals[count]?'#aa9944':'')+'" >' + vals[count] + '</th>';
                }
                str += '</tr>';
            }
            str += '</table>';
            document.body.innerHTML = str;
NodeList.prototype.slice = [].slice;
NodeList.prototype.indexOf = [].indexOf;
document.getElementsByTagName('th').slice().forEach(function(a, i, _arr){
    var _this = a;
    function find(){
        for (var _i=4;_i--;) {
            var _abs = Math.abs(_i-1.5);
            var _tmp = _arr[ i + (_abs+.5)*(_abs+.5)*(_i-1.5)/_abs ];
            console.log(  _i, _abs );
            if (_tmp&&_abs===.5&&_this.parentElement!==_tmp.parentElement) continue;
            if (_tmp&&!_tmp.innerHTML) return _tmp;
        };
        return false;
    };
    _this.onclick = function(){
        var _this = this;
        if (_this.innerHTML) {
            var _tmp = find();
            console.log( _arr.indexOf( _this ) );
            if (_tmp) {
                _tmp.innerHTML = _this.innerHTML;
                _this.removeAttribute('bgcolor');
                _tmp.setAttribute('bgcolor','#a94');
                _this.innerHTML = '';
            };
        };
    };
    
});
для хрома с оперой, остальные фыркают на прототипирование нодлиста
Alar, верни репу!
Naive вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно сделать движение чисел кнопоками (w,a,s,d) игра пятнашки Nikitos_ Паскаль, Turbo Pascal, PascalABC.NET 5 01.06.2012 23:23
игра пятнашки Vovan4uk Паскаль, Turbo Pascal, PascalABC.NET 1 28.03.2012 09:35
игра Пятнашки Lapo4ka Помощь студентам 0 01.05.2011 23:14
Игра пятнашки... Мамука Общие вопросы .NET 0 03.11.2009 23:25
Delphi игра пятнашки rumf Помощь студентам 14 31.05.2008 00:56