所以,即時嘗試編碼一個簡單的滑動拼圖,並得到真正卡住。 我有一個3x3 sqare與不同的「值」檢索div「值」爲javascript
現在,即時嘗試將數字移動到空格,反之亦然。
所以我的問題是,我怎樣才能以最簡單的方式將我的'測試'文本更改爲點擊的div的值?
所有答案和提示都忠實地讚賞
-Karlsen
編輯:
添加完整的代碼,它多一點理解,現在我想:
var counter = 0;
\t \t \t \t \t var lastClickedDiv;
\t \t \t \t \t function show(tag, alt1, alt2, alt3, alt4) {
\t \t \t \t \t if (alt1 && document.getElementById(alt1).innerHTML == '') {
\t \t \t \t \t document.getElementById(alt1).innerHTML = 'test';
\t \t \t \t \t tag.innerHTML = '';
\t \t \t \t \t }
\t \t \t \t \t if (alt2 && document.getElementById(alt2).innerHTML == '') {
\t \t \t \t \t document.getElementById(alt2).innerHTML = 'test1';
\t \t \t \t \t tag.innerHTML = '';
\t \t \t \t \t }
\t \t \t \t \t if (alt3 && document.getElementById(alt3).innerHTML == '') {
\t \t \t \t \t document.getElementById(alt3).innerHTML = 'test2';
\t \t \t \t \t tag.innerHTML = '';
\t \t \t \t \t }
\t \t \t \t \t if (alt4 && document.getElementById(alt4).innerHTML == '') {
\t \t \t \t \t document.getElementById(alt4).innerHTML = 'test3';
\t \t \t \t \t tag.innerHTML = '';
\t \t \t \t \t }
\t \t \t \t \t }
\t \t div.container {
\t \t \t display: flex;
\t \t \t height: 28vh;
\t \t }
\t \t \t div.number {
\t \t \t \t color: \t black;
\t \t \t \t background-color: rgb(140,0,0);
\t \t \t \t margin: 10px;
\t \t \t \t border: 10px solid black;
\t \t \t \t display: flex;
\t \t \t \t flex: 1;
\t \t \t \t font-size: 500%;
\t \t \t \t text-align: center;
\t \t \t \t flex-direction: column;
\t \t \t \t justify-content: center;
\t \t \t }
<!DOCTYPE html>
<html>
\t <head>
\t </head>
\t \t <body>
\t \t \t <H1> Sliding Puzzle </H1>
\t \t \t <div class="container">
\t \t \t <div id="a1" class="number" onclick="show(this, 'a2', 'b1')">8</div>
\t \t \t <div id="a2" class="number" onclick="show(this, 'a1', 'a3', 'b2')">5</div>
\t \t \t <div id="a3" class="number" onclick="show(this, 'a2', 'b3')">4</div>
\t \t \t </div>
\t \t \t <div class="container">
\t \t \t <div id="b1" class="number" onclick="show(this, 'a1', 'b2', 'c1')">6</div>
\t \t \t <div id="b2" class="number" onclick="show(this, 'a2', 'b1', 'b3', 'c2')">7</div>
\t \t \t <div id="b3" class="number" onclick="show(this, 'a3', 'b2', 'c3')">2</div>
\t \t \t </div>
\t \t \t <div class="container">
\t \t \t <div id="c1" class="number" onclick="show(this, 'b1', 'c2')">1</div>
\t \t \t <div id="c2" class="number" onclick="show(this, 'c1', 'b2', 'c3')">3</div>
\t \t \t <div id="c3" class="number" onclick="show(this, 'c2', 'b3')"></div>
\t \t \t </div>
\t \t </body>
</html>
你能解釋一下嗎?什麼是期望的輸出? –
希望的輸出是document.getElementById(alt4).innerHTML =其中一個被點擊的DIV。希望這可以很好地解釋它,英語不是我的第一語言,缺乏詞彙表會讓它很難:) –
在'show'函數,alt4將始終未定義,因爲show函數需要5個參數,並且最多傳遞4個參數。 –