2014-02-07 91 views
0

所以我現在正在學習JavaScript,我正在製作這個計算器。像任何其他JavaScript一樣開始。製作html文件,放入所有html標籤等,製作特殊的<script></script>標籤,我將編寫代碼。現在我的解決方案涉及很多變數和if語句等..JavaScript - 想知道這怎麼可能

但我不知道其他人如何做到這一點,我偶然發現了這一點:

<FORM NAME="Calc"> 
<TABLE BORDER=4> 
<TR> 
<TD> 
<INPUT TYPE="text" NAME="Input" Size="16"> 
<br> 
</TD> 
</TR> 
<TR> 
<TD> 
    <INPUT TYPE="button" NAME="one" VALUE=" 1 " OnClick="Calc.Input.value += '1'"> 
    <INPUT TYPE="button" NAME="two" VALUE=" 2 " OnCLick="Calc.Input.value += '2'"> 
    <INPUT TYPE="button" NAME="three" VALUE=" 3 " OnClick="Calc.Input.value += '3'"> 
    <INPUT TYPE="button" NAME="plus" VALUE=" + " OnClick="Calc.Input.value += ' + '"> 
<br> 
    <INPUT TYPE="button" NAME="four" VALUE=" 4 " OnClick="Calc.Input.value += '4'"> 
    <INPUT TYPE="button" NAME="five" VALUE=" 5 " OnCLick="Calc.Input.value += '5'"> 
    <INPUT TYPE="button" NAME="six" VALUE=" 6 " OnClick="Calc.Input.value += '6'"> 
    <INPUT TYPE="button" NAME="minus" VALUE=" - " OnClick="Calc.Input.value += ' - '"> 
<br> 
    <INPUT TYPE="button" NAME="seven" VALUE=" 7 " OnClick="Calc.Input.value += '7'"> 
    <INPUT TYPE="button" NAME="eight" VALUE=" 8 " OnCLick="Calc.Input.value += '8'"> 
    <INPUT TYPE="button" NAME="nine" VALUE=" 9 " OnClick="Calc.Input.value += '9'"> 
    <INPUT TYPE="button" NAME="times" VALUE=" x " OnClick="Calc.Input.value += ' * '"> 
<br> 
    <INPUT TYPE="button" NAME="clear" VALUE=" c " OnClick="Calc.Input.value = ''"> 
    <INPUT TYPE="button" NAME="zero" VALUE=" 0 " OnClick="Calc.Input.value += '0'"> 
    <INPUT TYPE="button" NAME="DoIt" VALUE=" = " OnClick="Calc.Input.value = eval(Calc.Input.value)"> 
    <INPUT TYPE="button" NAME="div" VALUE="/" OnClick="Calc.Input.value += '/'"> 
<br> 
</TD> 
</TR> 
</TABLE> 
</FORM> 

它不縮進真的很好,但問題是的,這是JavaScript,因爲我明白是的?而這個人甚至沒有使用它的腳本標籤。只需將代碼隨機放入一個html文件並將其運行即可。怎麼會這樣?

+0

查看指向包含腳本的文件的

1

其接受在輸入HTML的onclick屬性的JavaScript,你沒有,除非你有兩種獨立的代碼調用的代碼塊或導入另一個JS文件

1

這主要是需要一個腳本塊HTML。它具有onclick屬性,其中包含綁定到元素上的click事件的JavaScript函數的主體。

1

這只是如何嵌入JavaScript工作。據奧賴利的Java指南:

客戶端JavaScript代碼嵌入在 多種方式HTML文檔中:

指定一對和標籤

從外部文件之間由標籤

的src屬性在事件處理程序,指定爲HTML屬性的值,例如如 的onclick或的onmouseover

由於使用了特殊的javascript URL的身體:協議

1

當點擊一個按鈕,它會調用onClick功能。您可以在該參數內放置一段簡單的Javascript代碼,以便在單擊該按鈕時調用該參數。

Javascript eval函數將字符串評估爲Javascript代碼。這就是名爲「DoIt」的按鈕。其餘按鈕只需將數字和運算符附加到Calc.Input.value字符串。點擊「=」評估Calc.Input.value字符串。

Calc.Input.value指的是名爲Calc的表單中名爲Input的元素的值。

1

onclick屬性(和其他類似的事件處理程序屬性)是特殊的,它的值實際上是JavaScript - 類似於實際上是CSS的style屬性的值。

例如onclick="Calc.Input.value = ''"將執行JavaScript Calc.Input.value = ''。由於瀏覽器的自動化,Calc引用了Form元素,因此Input引用了Input標籤,而.value只是Input的一個屬性。

你發現這個例子看起來非常老舊,編碼風格很差。我會遠離它。