divのinnerHTMLをjavascript関数の値に基づいて変更しようとしています。残念ながら、私はエラーが発生していると私はなぜ不明です。innerHTMLを変更しようとしてエラーが発生しました - nullのinnerHTMLプロパティを設定できません
擬似コード
seconds
からnumber > 2
変更innerHTMLプロパティは、そうでない場合はsecond
に変更した場合。
私は周りを見て、私はDOMの前にトリガーされている機能に関連する何かを発見した。私はいくつかの変更を行いましたが、まだ成功しませんでした。私が間違っていることは何ですか? DOMをレンダリングした後、どのように関数をトリガーすることができますか? window.onload
は既に作業していませんか? document.getElementsByClassName('seconds')
とによってIdをdocument.getElementById('seconds')
しかし、jQueryを使って、ID$('#seconds')
とクラス:
は、事前に
JS
$(document).ready(function() {
window.onload = function() {
// Month,Day,Year,Hour,Minute,Second
upTime('may,05,2006,00:00:00');
};
function upTime(countTo) {
var now = new Date();
countTo = new Date(countTo);
var difference = (now - countTo);
var years = Math.floor(difference/(60 * 60 * 1000 * 24)/365);
var days = Math.floor(difference/(60 * 60 * 1000 * 24) * 1);
var hours = Math.floor((difference % (60 * 60 * 1000 * 24))/(60 * 60 * 1000) * 1);
var mins = Math.floor(((difference % (60 * 60 * 1000 * 24)) % (60 * 60 * 1000))/(60 * 1000) * 1);
var secs = Math.floor((((difference % (60 * 60 * 1000 * 24)) % (60 * 60 * 1000)) % (60 * 1000))/1000 * 1);
document.getElementById('years').firstChild.nodeValue = years;
document.getElementById('days').firstChild.nodeValue = days;
document.getElementById('hours').firstChild.nodeValue = hours;
document.getElementById('minutes').firstChild.nodeValue = mins;
document.getElementById('seconds').firstChild.nodeValue = secs;
if (secs > 2) {
console.log('over');
document.getElementById('.seconds').innerHTML = "seconds";
} else {
console.log('lower');
document.getElementById('.seconds').innerHTML = "second";
}
clearTimeout(upTime.to);
upTime.to = setTimeout(function() {
upTime(countTo);
}, 1000);
}
});
.innerHTMLを設定しようとしているオブジェクトが存在しないというエラーメッセージが表示されます。 '.innerHTML'では問題はありませんが、その直前のコードに問題があります。つまり、' document.getElementById( "。seconds") '' .': 'document.getElementById(" seconds ")なしで試してみてくださいinnerHTML = "秒" " –
トピックオフ:それはあなたのコードに入れていいです、私のペットpeevsのようなコードが表示されます:"時間残り:1秒 " - ugh。 innerHTML = "second" +(secs == 1? "": "s"); '(あなたがなぜあなたの名前であるのかわかりません。 '> 2'を使うと'!= 1'または '> = 2'でなければなりません)。 –
ありがとうございます。その理由は、私がそれらの値を変更することを含む多くのことを試していたからです。私はあなたの提案でコードを更新します...三元演算子の権利ですか?私はこれらのことを覚えておく必要があります。 –