13.01.2016, 14:50
|
Аспирант
|
|
Регистрация: 13.01.2016
Сообщений: 57
|
|
Сообщение от laimas
|
Щелчок по тегу А нужного хода, а дальше "сходить назад" начиная от последнего хода по текущий, это не сложно будет сделать.
Но история пишется автоматически, по крайней мере спец. кнопки для этого не видно, а значит и она по идее должна измениться при этом. Я так полагаю, а вы говорите, что сбрасывать/не разрешать играть при этом, не нужно. Если я прав, значит игру уже не возобновить с последнего хода.
|
вот например, я делаю некоторые ходы, затем вызываю функцию, она у меня как кнопка "new game" (я залил скрипт выше) при это фигуры переходят в исходное положение, НО игра при это не начинается заново а продолжается, и если я сделаю новый ход, то фигуры переместятся как были до этого, я хочу добиться такого же эффекта и при клике на один из ходов в истории. Т.е. это не отмена текущих ходов, а просто просмотр расположения фигур на доске для данных ходов
|
|
13.01.2016, 15:08
|
Аспирант
|
|
Регистрация: 13.01.2016
Сообщений: 57
|
|
Сообщение от laimas
|
Щелчок по тегу А нужного хода, а дальше "сходить назад" начиная от последнего хода по текущий, это не сложно будет сделать.
|
а как функция будет узнавать по какому именно тегу А мы щелкнули? они же различаются только содержимым, нет идентификатора. Если можно по содержимому, то как такое реализовать?
|
|
13.01.2016, 15:27
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Ну пощелкал игру... Странная логика. Играем, видим исполненные ходы. Нажимаем кнопку "Новая игра" - история не очищается, фигуры на исходную, но сделать ход можно только игроку, за которым остался очередной ход, причем только фигурой, которой он до этого не ходил, и в результате будет восстановлено на доске состояние предыдущей партии, плюс новый ход. Как-то это не вяжется с новой игрой, скорее это продолжение, зачем при этом фигуры на исходные позиции... не понять.
Кода много, все дополнения скорее вам сделают только платно, если конечно альтруист не возьмется помочь. )
|
|
13.01.2016, 15:32
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от diga
|
а как функция будет узнавать по какому именно тегу А мы щелкнули?
|
Обработчик щелчка нужно добавлять, причем я оказался прав, просмотрев запись ходов - ход пишется парами, то есть обоих игроков, и если вернуть состояние игры для одного хода, то не проблема, по какой ссылке А щелкнули, та и отправная точка. Но если подразумевается ход обоих игроков, то пары тегов А (ход каждого игрока в истории) нужно обрамлять, например в тот же SPAN. Иначе без костылей дополнительных не обойтись.
|
|
13.01.2016, 15:37
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
|
|
13.01.2016, 15:57
|
Аспирант
|
|
Регистрация: 13.01.2016
Сообщений: 57
|
|
я из сайта документации и скачал..
|
|
13.01.2016, 16:29
|
Аспирант
|
|
Регистрация: 13.01.2016
Сообщений: 57
|
|
тем не менее мой вопрос остается открытым, как реализовать просмотр истории хода.
|
|
13.01.2016, 16:38
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
diga,
врятли кто-то кроме вас будет внимательно читать доку ...
|
|
13.01.2016, 17:11
|
Аспирант
|
|
Регистрация: 13.01.2016
Сообщений: 57
|
|
Сообщение от рони
|
diga,
врятли кто-то кроме вас будет внимательно читать доку ...
|
сформулирую вопрос по другому, как можно сделать событие клик по одной из гиперссылок, и получить значение id?
сделал обромление тегом и добавил id, таким образом выглядит по лучше:
<span id="pgn">1. <a href="#" id="g3">g3</a> <a href="#" id="e6">e6</a> 2. <a href="#" id="f3">f3</a> <a href="#" id="c6">c6</a> 3. <a href="#" id="h3">h3</a> <a href="#" id="a6">a6</a></span>
т.е. вопрос, как навесить событие таким образом, чтоб было известно куда я кликаю, и мог считать id того куда я кликнул?
|
|
13.01.2016, 17:20
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Не так, если обрамлять тегом, должно быть так:
<span id="pgn"><span>1. <a>Ход 1 игрока</a> <a>Ход 2 игрока</a></span></span>
тогда
$('#pgn span').click(function() {
var a = $(this).children();
a.first().text() - ход первого игрока
a.last().text() - ход второго игрока
})
Иначе, без обрамления, щелчок по любому тегу А, затем разбираться, например по текстовому узлу (1., 2.) или по четности индекса, чтобы определить тег хода оппонента.
Последний раз редактировалось laimas, 13.01.2016 в 17:25.
|
|
|
|