Как изменить свойство объекта в функции с помощью onclick в JavaScript

1

Я новичок в программировании, и я пытаюсь сделать что-то, что немного перевыполнило для меня, поэтому любая помощь приветствуется.

Я хотел бы использовать средство просмотра Canvas Chess PGN на веб-сайте, который отображает шахматные игры и позволяет пользователям проходить игры. Я хочу использовать только одну шахматную доску для разных игр, поэтому я пытаюсь создать события onclick, которые изменяют значение свойства source в скрипте шахматной доски и снова запускают скрипт, но я не могу понять, как это сделать.

Это свойство "pgn_uri" следует изменить, нажав на кнопки, например, когда пользователь нажимает "Round2", чем на "pgn_uri: secondGame" и т.д. Сценарий с функцией CHESS.PgnViewer() также должен запускаться снова, чтобы шахматная доска обновилась.

<button type="button" name="button" id="round1">Round1</button>
<button type="button" name="button" id="round2">Round2</button>
<button type="button" name="button" id="round3">Round3</button>

<script src="canvaschess\canvaschess-0.1.0.min.js"></script>
<script src="canvaschess\pgnviewer-0.1.0.min.js"></script>

<script type="text/javascript">
var firstGame = 'canvaschess/pgns/round1.pgn';
var secondGame = 'canvaschess/pgns/round2.pgn';
var thirdGame = 'canvaschess/pgns/round3.pgn';
</script>

<script>
var viewer = new CHESS.PgnViewer({
pgn_uri: firstGame,
square_color_dark: '#000',
square_color_light: '#fff',
square_uri_dark: 'canvaschess/img/themes/wood/square_dark.jpg',
square_uri_light: 'canvaschess/img/themes/wood/square_light.jpg',
show_labels: false,
show_tags: true
});
</script>
Теги:
javascript-objects

2 ответа

1

попробуйте добавить события onclick, например

сохранить переменную say chessGame как "global" и изменить ее значение onclick кнопок

$('#round2').onclick(function()
{
chessGame ='secondGame';
});

и передать "chessGame" вместо "firstGame" в новом CHESS.PgnViewer

0

Добавление события click в каждую кнопку, поэтому, вероятно, этот код

// Assume you have global variable name game
$('#btn1, #btn2, #btn3').on('click', function(){
   var btn_clicked = $(this).attr('id'); // get id value
   switch (btn_clicked) {
       case 'btn1':
          game = 'canvaschess/pgns/round1.pgn';
          break;
       case 'btn2':
          game = 'canvaschess/pgns/round2.pgn';
          break;
       case 'btn3':
          game = 'canvaschess/pgns/round3.pgn';
          break;
   }
});

Теперь вы можете передать глобальную переменную в новый CHESS.PgnViewer

Примечание: я не тестировал этот код hehehe!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню