私は、特定の日付をとり、今後日数X日を返す仕事で使うための簡単なウェブアプリを作った。アンドロイドで完璧に動作します。 Safariは私が想像できる最高の入力値を取っていないようです。 Safariは未定義のNaNのみを返します。 HTMLはW3Cバリデーターでチェックアウトします。私はまた、 'use strict'を試して、変数にconstをつけるようにしました。私は今は無知で、頭を叩いて疲れている。単純なウェブアプリはアンドロイドで動作しますがサファリでは機能しません
<head>
<style>
body {
background-color: lightblue;
text-align: center;
}
button {
margin: 50px 0 25px;
}
</style>
</head>
<body>
<div>
<h3>Welcome to the</h3>
<h1>Ko-culator</h1>
</div>
<div>
<p>Enter last fill/pick up date:</p>
<input type="text" id="lastFillDate" placeholder="M-D-YY" style="text-align: center">
<p>Enter day supply:</p>
<input type="text" id="daySupply" placeholder="30, 60, etc" style="text-align: center">
</div>
<div>
<button type="submit" onClick="getNextFill()">Next Fill Date</button>
</div>
<div>
<p class="date-due"></p>
</div>
<script>
function getNextFill() {
const days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
const lastFillDate = new Date(document.querySelector('#lastFillDate').value);
const daySupply = document.querySelector('#daySupply').value;
const dayOfMonth = lastFillDate.getDate();
lastFillDate.setDate(dayOfMonth + Number.parseInt(daySupply));
const nextFillDate = days[lastFillDate.getDay()] + " " + (lastFillDate.getMonth() + 1) + "-" + lastFillDate.getDate() + "-" + lastFillDate.getFullYear();
document.querySelector('.date-due').innerHTML = 'Next fill is due on: <br/><br/>' + nextFillDate;
};
</script>
</body>
私はSafariが 'Date.getDate()'に問題があることを知っています:[ここ](https://stackoverflow.com/questions/21883699/safari-javascript-date-nan-issue-yyyy-mm-dd- hhmmss) – TricksfortheWeb