-1
var num = Math.floor(document.getElementById("num").innerHTML);
document.getElementById("num").innerHTML = num+1;
}
else{
document.getElementById("num").innerHTML = num-1;
}

残念ながら、$NaN が返されます。

スパンの内容は、ほら<span id="num">0</span>、特別なことではなく、私は何か愚かなことをしているに違いないので、私は完全に混乱しています!

ありがとうございます。

4

3 に答える 3

0

.innerHTML文字列を返します。.floor文字列は編集できません。あなたはparseInt()最初にする必要があります。

于 2013-10-18T17:38:08.133 に答える
0

そして、あなたの完全なコードは、-1が機能しない理由を示しています

if (document.getElementById("div").style.top === "40px") {
    var num = Math.floor(document.getElementById("num").innerHTML);
    document.getElementById("num").innerHTML = num + 1;
} else {
    document.getElementById("num").innerHTML = num - 1;
}

だから何undefined - 1ですか?そうですねNaN!なんで?numはelseではなくifに設定されているためです。

どのように修正しますか?var num行を if の外に移動します。

于 2013-10-18T17:56:44.010 に答える