遇到这个小谜题,并且对JavaScript内部的了解不够 看到行为的原因。它并没有阻碍我的工作,但我会很感激 有人可以对它施加一些启示。
function SetVarWrapsMMxCalled(){ var EstTrigValTHALISTx1=289437562937; var BIGDiv = document.getElementById("nested"); nested.textContent = EstTrigValTHALISTx1; return EstTrigValTHALISTx1; }
function easierThen(){
var howEasy=88;
return howEasy;
}
var EverSoEasy = SetVarWrapsMMxCalled(); // Does not work
var EverSoEasy = easierThen(); // This DOES work ???!
function seriously(EverSoEasy){
var omgsosilly=EverSoEasy;
var nestedDiv = document.getElementById("nested");
nestedDiv.textContent = omgsosilly;
}
对于那些我未能提出足够清楚问题的人,我并没有同时使用这两个问题 这两条线同时出现:
var EverSoEasy = SetVarWrapsMMxCalled(); // Does not work
var EverSoEasy = easierThen(); // This DOES work ???!
关键是一行(第二行)产生一个显示在div中的值 可以预料,但第一个没有。
从事物中可以看出,似乎已经探索了很多东西 toying with the code in action问题不是我想象的那样。
现在我有了一个新问题。大。但这是一个漫长的周末。后面。
答案 0 :(得分:2)
这有一个javascript错误,因为未定义变量nested
:
function SetVarWrapsMMxCalled(){
var EstTrigValTHALISTx1=289437562937;
var BIGDiv = document.getElementById("nested");
nested.textContent = EstTrigValTHALISTx1;
return EstTrigValTHALISTx1;
}
可能应该这样:
function SetVarWrapsMMxCalled(){
var EstTrigValTHALISTx1=289437562937;
var BIGDiv = document.getElementById("nested");
BIGDiv.textContent = EstTrigValTHALISTx1;
return EstTrigValTHALISTx1;
}
将来,请查看浏览器的错误控制台或调试器控制台,它会告诉您哪一行有第一个javascript错误。这应该不是一个谜。当somethnig不工作时,这是我看的第一个地方。在控制台中显示的代码中应该没有错误。
仅供参考,这可以简化为:
function SetVarWrapsMMxCalled(){
var EstTrigValTHALISTx1 = 289437562937;
document.getElementById("nested").textContent = EstTrigValTHALISTx1;
return EstTrigValTHALISTx1;
}
答案 1 :(得分:1)
尝试以下方法:
function SetVarWrapsMMxCalled()
{
var EstTrigValTHALISTx1=289437562937;
var BIGDiv = document.getElementById("nested");
BIGDIv.textContent = EstTrigValTHALISTx1;
return EstTrigValTHALISTx1;
}