私は今jqueryのビットに問題があります。ナビゲーション コードを取得しました (たとえば、上矢印と下矢印を押すと、URL の $_GET 変数が変更されます)。正の数では問題なく動作していますが、-1 を超えようとすると、変数の設定が解除され、ページがリセットされます。以下は、問題の Jquery 関数です。
function arrowbuttons()
{
$(document).keydown(function(e){
var full_url = document.URL; // Get current url
var split = location.search.replace('?, &');
var y = split[7];
var x = split[3];
var down = +split[7]-1;
var up = +split[7]+1;
var left = +split[3]+1;
var right = +split[3]-1;
if (e.keyCode == 37) {
window.location = 'index.php?X='+left+'&Y='+y+'&Z=0';
return false;
}
if(e.keyCode == 38) {
window.location = 'index.php?X='+x+'&Y='+up+'&Z=0';
return false;
}
if(e.keyCode == 39) {
window.location = 'index.php?X='+right+'&Y='+y+'&Z=0';
return false;}
if(e.keyCode == 40) {
window.location = 'index.php?X='+x+'&Y='+down+'&Z=0';
return false;}
});
}
影響を受ける URL 変数 (X または Y) のいずれかが -1 を下回ろうとしている場合、前述のように、php リダイレクト コードによってすべてが先頭 (X=0&Y=0&Z=0) にリダイレクトされます。これは厳密には Jquery の問題です。サイトにハードコーディングしたリンクは -16 まで下げることができるからです。さらに、どの方向でも +10 を超えることができないことに気付きました。+10 を超えると、(影響を受けた変数に応じて X=2 または Y=2) にリセットされます。