这是我的Javascript代码。
$("#changetemp").click(function () {
var temp = $("#temperature").html;
var final_letter = temp[temp.length-1];
$("#temperature").html(function ()
{if (final_letter == "F") {return celsius;}
else {return fahrenheit;}});});
});}});});
它应该在摄氏和华氏之间切换温度,但不会产生很大的脂肪。我用谷歌搜索并改变了一些东西(例如在val,html和文本之间消失,尝试了charAt但是我无法做任何事情,更不用说正确的事了。任何建议都会非常受欢迎。
编辑:“#changetemp”是您单击以在温度之间切换的按钮(理想情况下)。 “#temperature”是温度显示的位置(确实如此,但不会改变)。
也尝试过:
这两个是先前通过JSON定义的 $ .getJSON(url,function(location){var celsius = $(“#temperature”)。html(Math.round(location.main.temp - 273)+“°C”);});
我尝试通过添加
使它们成为全局变量var celsius; var fahrenheit;
在第一个函数开始之后(包围其他所有内容)但我猜这不起作用。
更多:
谷歌搜索表明变量不能以数字开头。这是阻止我在这里的原因吗? 我设法显示了温度,但没有改变它。 你怎么绕过那个?我尝试更改代码,以便'摄氏'给'温度:10C'而不是'10C',但这并没有解决它。
答案 0 :(得分:0)
我假设错误在var temp = $("#temperature").html;
行
如果将其更改为var temp = $("#temperature").html();
,会有帮助吗?
html是一个jQuery函数,所以你需要用parantheses来调用它。否则temp不会包含#temp元素的内容,而是包含对html方法的引用。因此,您没有收到内容的最后一个字母。