2014-09-25 2 views
1

Когда я использую этот пример, допустим только допустимые ходы http://chessboardjs.com/examples#5000, я могу перемещать белые и черные фигуры. Когда я хочу установить строку fen в config, заменив position: 'start' на position: 'r1bqkbnr/pppp1ppp/2n5/1B2p3/4P3/5N2/PPPP1PPP/RNBQK2R', я не могу перемещать куски, которые уже были перемещены, и если я перемещаю кусок, который никогда не был перемещен, все остальные части возвращаются к начальная позиция.chessboard.js не может играть в игру с заданной позицией

+0

Любая конкретная причина, по которой вы отметили этот вопрос 'php'? –

+0

Я использую его на сайте Wordpress. –

+0

О том, что вы используете веб-сервер nginx, или что он размещен в Индонезии .... chessboard.js не заботится ни о чем из этого –

ответ

1

'r1bqkbnr/pppp1ppp/2n5/1B2p3/4Р3/5N2/PPPP1PPP/RNBQK2R' не допустимый формат FEN для chess.js, потому что библиотека не знает о каких-либо параметров (шаг: черный или белый, замки , и т.д).

var game = new Chess(); 
game.validate_fen('r1bqkbnr/pppp1ppp/2n5/1B2p3/4P3/5N2/PPPP1PPP/RNBQK2R'); 

//Object {valid: false, error_number: 1, error: "FEN string must contain six space-delimited fields."} 

Вы должны использовать правильный FEN для chess.js. Например:

var game = new Chess("rnbqkbnr/pppp1ppp/8/4p3/4P3/8/PPPP1PPP/RNBQKBNR w KQkq e3 0 2"); 

// cfg.position == "rnbqkbnr/pppp1ppp/8/4p3/4P3/8/PPPP1PPP/RNBQKBNR w KQkq e3 0 2" 

Или вы можете использовать game.load функцию. Например:

var game = new Chess(); 
game.load("rnbqkbnr/pppp1ppp/8/4p3/4P3/8/PPPP1PPP/RNBQKBNR w KQkq e3 0 2"); 

// cfg.position == "rnbqkbnr/pppp1ppp/8/4p3/4P3/8/PPPP1PPP/RNBQKBNR w KQkq e3 0 2" 
+0

Позднее спасибо, но спасибо –

 Смежные вопросы

  • Нет связанных вопросов^_^