// initially_andthen.js // Tic Tac Toe // RJM Programming // May, 2018 // On some web browsers can use a bookmark(let) like below: // javascript: var tag=document.createElement('script'); tag.src="//www.rjmprogramming.com.au/HTMLCSS/initially_andthen.js"; var firstScriptTag=document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag,firstScriptTag); var cks=['-1']; var ans=''; var isid=0, jsid=0; var alreadydone=''; var player1has=''; var player2has=''; var onetwo=[1,2]; var rdone=false; var charis=['X','0']; var ccol=['yellow','pink']; var eog=''; var precursor='Tic Tac Toe - RJM Programming - May, 2018 ... '; var tag; // = document.createElement('script'); var firstScriptTag; // = document.getElementsByTagName('script')[0]; function checkkb(e) { var characterCode; if (e && e.which) { e = e; characterCode = e.which; } else { e = event; characterCode = e.keyCode; } if (characterCode >= 49 && characterCode <= 57) { cks.push(eval(-48 + characterCode)); } } function pm(im) { return onetwo[eval(-1 + im)]; } function doeog() { if (eog != '') { alert(eog); eog=''; location.href='http://www.rjmprogramming.com.au/HTMLCSS/initially_andthen.htm'; } } function readyd(ns, nm) { if (ns.indexOf('1') != -1 && ns.indexOf('2') != -1 && ns.indexOf('3') != -1) { eog=('Tic Tac Toe game from RJM Programming congratulates Player ' + pm(nm) + '. You win!'); //location.href=document.URL; } else if (ns.indexOf('4') != -1 && ns.indexOf('5') != -1 && ns.indexOf('6') != -1) { eog=('Tic Tac Toe game from RJM Programming congratulates Player ' + pm(nm) + '. You win!'); //location.href=document.URL; } else if (ns.indexOf('7') != -1 && ns.indexOf('8') != -1 && ns.indexOf('9') != -1) { eog=('Tic Tac Toe game from RJM Programming congratulates Player ' + pm(nm) + '. You win!'); //location.href=document.URL; } else if (ns.indexOf('1') != -1 && ns.indexOf('4') != -1 && ns.indexOf('7') != -1) { eog=('Tic Tac Toe game from RJM Programming congratulates Player ' + pm(nm) + '. You win!'); //location.href=document.URL; } else if (ns.indexOf('2') != -1 && ns.indexOf('5') != -1 && ns.indexOf('8') != -1) { eog=('Tic Tac Toe game from RJM Programming congratulates Player ' + pm(nm) + '. You win!'); //location.href=document.URL; } else if (ns.indexOf('3') != -1 && ns.indexOf('6') != -1 && ns.indexOf('9') != -1) { eog=('Tic Tac Toe game from RJM Programming congratulates, Player ' + pm(nm) + '. You win!'); //location.href=document.URL; } else if (ns.indexOf('1') != -1 && ns.indexOf('5') != -1 && ns.indexOf('9') != -1) { eog=('Tic Tac Toe game from RJM Programming congratulates Player ' + pm(nm) + '. You win!'); //location.href=document.URL; } else if (ns.indexOf('3') != -1 && ns.indexOf('5') != -1 && ns.indexOf('7') != -1) { eog=('Tic Tac Toe game from RJM Programming congratulates Player ' + pm(nm) + '. You win!'); //location.href=document.URL; } else if (eval(eval(player1has.length) + eval(player2has.length)) >= 9) { eog=('Tic Tac Toe game from RJM Programming calls it a Draw!'); //location.href=document.URL; } if (eog != '') setTimeout(doeog, 300); } function noneis() { if (!document.getElementById('square1') && !document.getElementById('myh1')) { document.body.innerHTML='

Tic Tac Toe via Dynamic Javascript - RJM Programming - May, 2018
123
456
789

'; } if (!rdone) { var aot=location.search.split('squares=')[1] ? decodeURIComponent(location.search.split('squares=')[1].split('&')[0]) : ''; for (var iaot=0; iaot 0) { if (cks[0] < 0) { cks.shift(); setTimeout(kpf,300); //document.getElementById('kp').focus(); setTimeout(noneis, 8000); } else { nextone(jsid); jsid++; } } else { nextone(jsid); jsid++; } } function kpf() { document.getElementById('kp').focus(); } function nextone(sid) { document.getElementById('myh1').innerHTML=''; tag = document.createElement('script'); tag.id='scr' + sid; tag.innerHTML = " ans='0'; var pf='" + precursor + "'; while (ans.length != 1 || ans < '1' || ans > '9' || alreadydone.indexOf(ans) != -1) { if (cks.length > 0) { ans='' + cks[0]; cks.shift(); } else { ans=prompt(pf + 'Player ' + '" + pm(eval(eval(sid % 2) + 1)) + ", which square number from 1 to 9 do you want to place a ' + charis[" + eval(sid % 2) + "] + '?', ''); } if (ans == null) { ans='0'; } else if (ans == '') { ans='0'; } pf='Sorry, no can do. '; } alreadydone+=ans; player" + eval(eval(sid % 2) + 1) + "has+=ans; readyd(player" + eval(eval(sid % 2) + 1) + "has," + eval(eval(sid % 2) + 1) + "); document.getElementById('square' + ans).style.backgroundColor=ccol[" + eval(sid % 2) + "]; document.getElementById('square' + ans).innerHTML=charis[" + eval(sid % 2) + "]; if (" + sid + " < 8) { setTimeout(noneis,2000); } "; precursor=''; firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); } setTimeout(noneis, 2000);