所以我的类分配是采用先前的赋值并使其从HTML输入字段中获取字符串。这是以前的任务。
http://jsfiddle.net/ekj947kg/2/
var line = prompt("Enter the sentence to be turned into an acronym.");
var words = line.split(" ");
var result = "";
for (var i = 0; i < words.length; i += 1) {
result += words[i].charAt(0).toUpperCase();
}
alert(result);
这是我的第一个编码课程,我们还处于初级阶段。后面的两个块都是从书中复制的,所以我不确定它们是如何工作的。我已经尝试通过复制这些部分来使我的代码中的输入字段(最后链接)工作,但我似乎无法弄清楚我做错了什么。
该部分建议我们查看这个特定的练习以寻求帮助,但部分问题是它使用了2个文本文件(.html&amp; .js),而这个分配需要完成并保存在JSfiddle中,所以我们可以给老师一个链接。
任何可以帮助我解决问题的建议都会非常感激。不过要记住,我对术语的了解是入门级的,所以越简单越好。洛尔
这是我们应该看的练习。
HTML
<!doctype html>
<html>
<head>
<meta charset="UTF-8"/>
<title>JavaScript Temperature Converter</title>
</head>
<body>
<h1>Temperature Conversion</h1>
<p>
<input type="text" id="temperature" />
<input type="button" id="f_to_c" value="F to C" />
<input type="button" id="c_to_f" value="C to F" />
</p>
<p id="result"></p>
<script src="temperature.js"></script>
</body>
</html>
JS
var report = function (celsius, fahrenheit) {
document.getElementById("result").innerHTML =
celsius + "\xb0C = " + fahrenheit + "\xb0F";
};
document.getElementById("f_to_c").onclick = function () {
var f = document.getElementById("temperature").value;
report((f - 32) / 1.8, f);
};
document.getElementById("c_to_f").onclick = function () {
var c = document.getElementById("temperature").value;
report(c, 1.8 * c + 32);
};
最后,这是我的火车残骸的链接。 http://jsfiddle.net/ekj947kg/6/
P.S。当我们遇到麻烦时,老师建议我们查看stackoverflow以获取建议。
答案 0 :(得分:0)
你真的与最后关联的东西并不是那么遥远。
编辑了更多信息。 一些意见:
首先,始终在页面上定义脚本类型。脚本标记表示页面中的可执行代码块,虽然大多数时候您将使用JavaScript作为语言,但您可以指定其他语言。告诉浏览器您正在使用的类型非常重要。有用的链接:http://mzl.la/1G1JCCh。我在您的上一个链接中看到您在主体中有脚本标记,因此请确保您定义语言。
正如有人提到的,最佳做法是在单独的文件中定义JavaScript(JS)。尽管这本书是这样做的,但对于你的小提琴来说,这很难。 HTML按顺序加载,因此它低于你的标记是正确的。当我提到标记时,我实际上只是指代你的代码。 HTML代表超文本标记语言,标记是定义或创建文档的代码。
此外,在Fiddle上你将jQuery作为库加载。您不需要这样做,因此您可以将其设置为“No-Library”。如果你启用它,它不会伤害任何东西,因为它被写为不干扰核心JavaScript功能。但是,在现实世界中,出于性能原因,您可以避免加载不必要的脚本。此外,我总是建议在学习框架或库之前学习语言的基础知识。 jQuery是一个简化复杂操作的JavaScript库。虽然它使一大堆东西变得更容易,但了解它在幕后的实际作用是有帮助的。
作为附加说明,请尝试使用忠实的“警告”命令来查看值,而不是使用报告。对于大多数现代浏览器,您也可以使用“console.log”。不幸的是,IE在某些旧版本中不喜欢“控制台”,因为它在Developer Tools打开之前不存在,在某些版本中引发了JS错误。为了快速测试,警报就在您面前。
我想你会发现你已经拥有了自己需要的价值。在那之后,既然你有自己的价值,那就像你在你所链接的第一个项目中那样去做。
看起来你已经掌握了你正在尝试的东西,但我们中的一些人可以稍微清理一下。您已经拥有的示例以及本书的工作方式是将事件处理程序分配给DOM对象的click事件。
您可能已经想到了这一点,但“document.getElementById()”函数检索对该元素的引用,也称为DOM对象(DOM =文档对象模型)。事件处理程序是在分配给它的对象上发生事件时调用或执行的函数。在这种情况下,您说:“只要在此元素上发生click事件,请调用此函数。”正如pmac89指出的那样,您还可以使用属性为事件分配处理程序。
此外,为了扩展第2步中提到的位,HTML从上到下依次加载。这意味着浏览器从上到下读取代码并按顺序执行。因此,如果你的HTML之前有你的JavaScript块,并且你没有放入代码来让脚本的执行等到页面加载,你将找不到你想要的元素;它们还不存在。这就是为什么,在你的情况下,将你的脚本块放在HTML之后,在体内是很重要的。随着您的进步,您将学习使用它的方法,这是jQuery简化的另一件事。
请阅读以下链接以获取更多技术细节。 Mozilla Dev Network(MDN)是一个很好的资源:
答案 1 :(得分:0)
你被允许使用jQuery吗?为什么写下所有document.getElementById("c_to_f").onclick
内容 - 除非你喜欢键盘输入,我想。
你需要陷入一个名为&#34; clicker&#34;的按钮。点击:
$('#clicker').click(function(){
var myVar = $('#phrase').val();
});
上面的代码已将#phrase字段的内容放入变量myVar
。现在你可以用这个变量做点什么了。尝试提醒它:
alert(myVar);