我正在把攝氏度做成華氏度計算器。我的codepen在這裏:https://codepen.io/j9k9/pen/zBZJQL 我想這樣做,如果celcius輸入是活動的,轉換爲farenheit函數被調用,反之亦然,轉換隻發生在提交按鈕被點擊。 我也嘗試了一個if/else語句來處理無效的活動表單ID。攝氏溫度到華氏溫度的轉換 - JavaScript
代碼如下:
HTML:
<html>
<head>
<meta charset="UTF-8">
<title>Temperature Converter - Part 1</title>
</head>
<body>
<h1>Temperature Converter</h1>
<div id="inputs">
<input id="cInput" placeholder="celcius"/>
<input id="fInput" placeholder="farenheit"/>
</div>
<button id="submit">Convert</button>
<h1 id="result">Result:</h1>
<script src="js/index.js"></script>
</body>
</html>
JS:
document.getElementById("cInput").oninput = function() {convertCToF()};
document.getElementById("fInput").oninput = function() {convertFToC()};
function convertCToF() {
var c = document.querySelector("#cInput").value;
var f = c * (9/5) + 32;
c = parseInt(c);
f = parseInt(f);
document.querySelector("#result").innerHTML = ("Result: ") + f + (" \u2109");
}
document.querySelector("#submit").onclick = convertCToF;
function convertFToC() {
var f = document.querySelector("#fInput").value;
var c = (f - 32) * 5/9;
c = parseInt(c);
f = parseInt(f);
document.querySelector("#result").innerHTML = ("Result: ") + c + (" \u2103");
}
document.querySelector("#submit").onclick = convertFToC;
問題是,當你點擊提交,兩個輸入字段失去焦點,它是「活躍」的按鈕。您需要爲每個輸入監聽onfocus,並記下最後點擊哪個輸入。 – Emissary
我改變了這個問題來解釋這一點。謝謝 :) – Janine