2010-08-21 44 views
9

Ai có thể đề xuất một bàn cờ JavaScript miễn phí (như tự do) và mã nguồn mở JavaScript? Kế hoạch của tôi là kết nối nó với một số mã Python phía máy chủ, có lẽ nó sẽ là khuôn khổ web bình.Bàn cờ JavaScript miễn phí

tôi cần một bộ thực sự tối thiểu của các tính năng:

  • một cách để hiển thị một vị trí trên bảng (không chỉ là ban đầu một) khi tạo mã HTML của các server-side script. Vị trí có thể được lưu trữ trong một danh sách các danh sách (để mô phỏng một mảng hai chiều) và tùy chọn trong một chuỗi FEN (Forsyth-Edwards Notation).
  • một cách để thực hiện di chuyển (bằng cách kéo các phần bằng con trỏ chuột) và di chuyển tự động tới tập lệnh phía máy chủ qua HTTP POST. Việc xác thực di chuyển bằng mã JavaScript là không bắt buộc, bởi vì tôi có thể thực hiện phía máy chủ này.

Trả lời

4

Hãy thử pgn4web. Nó hỗ trợ các chuỗi PGN và thậm chí cả Chess960. Rất dễ dàng tùy chỉnh.

+1

tôi sử dụng này trên một diễn đàn cờ vua (SMFforum mềm ware), hoạt động tuyệt vời. – Danijel

1

Tôi sắp thử jChess, một plugin jQuery có vẻ đầy hứa hẹn. Tuy nhiên, tôi không nghĩ rằng người dùng có thể di chuyển các mảnh ra khỏi hộp.

9

Tôi vừa phát hành http://chessboardjs.com tại v0.1.0 và có vẻ như phù hợp với tất cả các yêu cầu của bạn.

Đó là mã nguồn mở theo giấy phép MIT (ví dụ: như trong tự do)

+0

Đây là một bảng rất đẹp .. – KevinDeus

1

Đây là một chess board mà chắc chắn sẽ làm hài lòng nhu cầu của bạn. Ra khỏi hộp nó có:

  • thiết lập vị trí fen
  • nhiều bảng thiết lập
  • mảnh di chuyển, loại bỏ mảnh, thêm mảnh
  • chủ đề khác nhau của miếng
  • lật bảng
  • và nhiều thứ khác

Thật dễ dàng để thiết lập (chỉ bằng cách thực hiện sau đây):

Javascript

var ruyLopez = 'r1bqkbnr/pppp1ppp/2n5/1B2p3/4P3/5N2/PPPP1PPP/RNBQK2R'; 
var board = new ChessBoard('board', ruyLopez); 

HTML

<div id="board" style="width: 400px"></div> 

Bạn có thể nhận

enter image description here

+0

liên kết ???????????????????????????? – KevinDeus

+1

@KevinDeus Xin lỗi vì lý do nào đó khi tôi dán liên kết này biến mất. Sửa lỗi. –