Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.01.2016, 12:56
Аспирант
Отправить личное сообщение для diga Посмотреть профиль Найти все сообщения от diga
 
Регистрация: 13.01.2016
Сообщений: 57

Срабатывание функции с определенным значением
Доброго времени суток, имеется скрипт шахматы (найден в сети), хочу сделать возможность просмотра сделанных ходов.
Ходы формируются вида PGN: 1. e4 f5 2. a4 b6 (например). Хочу чтоб при на один из ходов, была показана на доске каким образом был сделан ход. Для этого имеется некоторая функция которая показывает перемещение всех фигур на доске, выглядит она следующим образом:

$('#moveBtn').on('click', function() {
  board.move('a2-a4', 'h7-h5');
});


т.е. фигура с a2 перешла в a4 и фигура с h7 перешла в h5, таким образом PGN будет выглядить как 1.a4 h7. PGN составляется следующим образом:
<span id="pgn"></span>

move_string = '</a>'+pgn_move_number + '.'+'<a href="#">';
move_string = move_string + ' ' + move_to_san(move);


т.е. результат имеет вид:
<span id="pgn">1.<a href="#"> d3 c6 </a>2.<a href="#"> b4 a6</a></span>


Собственно вопрос как зная только PGN можно посмотреть движение фигуры? Т.е. кликнул по первой ссылке, получил движение фигуры, кликнул по второй получил новое движение фигуры.

Буду очень благодарен, если поможете!
Ответить с цитированием
  #2 (permalink)  
Старый 13.01.2016, 13:09
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

diga,
попробуйте ещё раз обьяснить, не упоминая PGN.
может макет какой и описание какое-никакое -типа жмак сюда, а оно как бух?

Последний раз редактировалось рони, 13.01.2016 в 13:13.
Ответить с цитированием
  #3 (permalink)  
Старый 13.01.2016, 13:35
Аспирант
Отправить личное сообщение для diga Посмотреть профиль Найти все сообщения от diga
 
Регистрация: 13.01.2016
Сообщений: 57

Сообщение от рони Посмотреть сообщение
diga,
попробуйте ещё раз обьяснить, не упоминая PGN.
может макет какой и описание какое-никакое -типа жмак сюда, а оно как бух?
в общем, есть игра шахматы

есть информация по ходам, которая формируется справа от доски


хочу, чтоб при нажатии на один из ходов (гиперссылка), фигуры на доске поменялись (которые соответствуют данному ходу)

для этого есть функция, о которой я писал выше, но вот как их соединить я не знаю ))))
Ответить с цитированием
  #4 (permalink)  
Старый 13.01.2016, 13:45
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от diga
span id="pgn"
Такого не может быть, id должно быть уникальным. А чтобы сделать ход по истории, нужно обрабатывать щелчок по ним, а текст их дочерних элементов передавать в board.move(). Формируйте либо уникальные id у span, либо назначьте класс (а может он уже есть?), ну а далее уже установка обработчика.

PS. Видимо нужно еще и сбрасывать ход по истории, вернув состояние игры до этого, чтобы можно было ее продолжить?

Последний раз редактировалось laimas, 13.01.2016 в 13:48.
Ответить с цитированием
  #5 (permalink)  
Старый 13.01.2016, 13:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

diga,
наверно где-то есть данные всех ходов -- и прежде чем показать ход из середины партии наверно надо вывести все предыдущие ходы до выбранного ... это так мысли вслух ... интересно что вы там хотите соединить ... это так мысли вслух ... проблемку бы локализовать ... глядишь кто и подсказал бы ... пока всё в тумане ... делайте макет и пишите что не получается.
Ответить с цитированием
  #6 (permalink)  
Старый 13.01.2016, 13:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от laimas
Такого не может быть
вывод партии -- зачем ещё то элементы кроме 1 - похоже клик по ссылке нужно ТС обработать в этом элементе.
Ответить с цитированием
  #7 (permalink)  
Старый 13.01.2016, 13:53
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

вот скажем ход 1. с3 это пешкой сходили с с2 или конём с b1?
Ответить с цитированием
  #8 (permalink)  
Старый 13.01.2016, 13:54
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Ну так он же пишет - история справа, значит это будет набор span, ну и одно id на всех .... )
Я полагаю, что нужно иметь возможность выполнить любой ход из истории. Значит надо еще и возвращаться к последнему ходу (возврат в игру).
Хотя все может быть. )
Ответить с цитированием
  #9 (permalink)  
Старый 13.01.2016, 13:55
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от рони
вот скажем ход 1. с3 это пешкой сходили с с2 или конём с b1?
Не только чем, но и какими, то есть первый ход чей, черных или белых. )
Ответить с цитированием
  #10 (permalink)  
Старый 13.01.2016, 13:59
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от рони
вывод партии -- зачем ещё то элементы кроме 1
Ну да, может быть - в одном span текст и ссылки. Не удобно для установки обработчика.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Срабатывание функции по нажатию на checkbox Valentin1918 Общие вопросы Javascript 9 09.11.2016 12:34
Двойное срабатывание функции webbaster Общие вопросы Javascript 3 08.08.2015 23:29
События - focusout и click отменить повторное срабатывание функции egorychmaster Элементы интерфейса 1 25.06.2015 13:35
Проблема с выходным значением функции sparrow Общие вопросы Javascript 4 18.01.2014 18:13
предотвратить срабатывание функции posta Общие вопросы Javascript 8 05.06.2011 16:37