我正在使用 .animate 尝试创建基于图块的游戏。我正在将 jQuery 与另一个 ajax 脚本混合以尝试使其工作。我一直单击箭头移动但没有得到任何结果。也许其他人会明白为什么?
纽扣:
$data .= "<center><table><tr><td></td><td><button onclick=\"transition(\'up\')\">↑</button></td> <td></td></tr><tr><td><button onclick=\"transition(\'left\')\">←</button></td> <td></td> <td><button onclick=\"transition(\'right\')\">→</button></td></tr><tr><td></td> <td><button onclick=\"transition(\'down\')\">↓</button></td> <td></td></tr></table></center>";
地图:
$data .= "<div style=\'width:480px;height:480px;background-color:#000000;background-image:url(".$map['background'].");padding:".$map['locationpadding'].";\' id=\'locationMap\'>";
$data .= "<div id=\'specialLocations\'></div>";
$data .= "<div style=\'position:absolute;left:".$charrel[0]."px;bottom:".$charrel[1]."px;width:32px;height:32px;background-image:url(".$char['charimage'].");\' id=\'charLocation\'></div>";
$data .= "</div>";
最后,得到动画。我已经确保 if 语句都正常工作。所以到目前为止一切正常。
if($_POST['direction'] == "up"){
print("$('#charLocation').animate({'bottom': '+=50px'}, 'slow');");
}elseif($_POST['direction'] == "left"){
print("$('#charLocation').animate({'left': '-=50px'}, 'slow');");
}elseif($_POST['direction'] == "right"){
print("$('#charLocation').animate({'left': '+=50px'}, 'slow');");
}elseif($_POST['direction'] == "down"){
print("$('#charLocation').animate({'bottom': '-=50px'}, 'slow');");
}else{
die('alert("Invalid movement.");');
}
通过 PHP 打印 jQuery/JavaScript 代码的原因是所有内容都是通过 Ajax 代码加载的,所以我从不打印。
很抱歉提前给您带来任何困惑,并感谢您为我查看此内容。