Instamapper が閉鎖され、月に到達しようとしているこのプロジェクトを行っているため、歩いた距離を数えるため、代わりに使用できる Web アプリを作成しようとしました。5秒ごとにデータを含むフォームを自動的に送信することを除いて、すべてが機能しました。.submit() を使用しようとしましたが、機能しません。
編集: submit() 関数が機能していません。コンソールからのエラーは次のとおりです。
キャッチされていない TypeError: オブジェクト # のプロパティ 'submit' は関数ではありません
コードは次のとおりです。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
setTimeout(function(){
$('form#target').submit();
}, 5000);
});
</script>
<?php
if(isset($_POST['submit'])) {
echo 'works';
}
$device = 'vPhone';
$date = new DateTime();
$timest = $date->getTimestamp();
?>
</head>
<body>
<form action="" method="post" id="target">
<input type="text" value="<?=$timest?>" name="timestamp" />
<input type="text" value="<?=$device?>" name="device" />
<input type="submit" name="submit" id="submit" />
</form>
<script>
var x=document.getElementById("target");
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
} else {x.innerHTML="Geolocation is not supported by this browser.";}
function showPosition(position)
{
x.innerHTML += "<input type='text' name='lat' value='" + position.coords.latitude +
"' disable><br> <input type='text' name='lat' value='" + position.coords.longitude + "' disable> "; }
</script>
</body>
</html>