2015-01-01 30 views
0

我想在html中的東西,我想使用像K,M,B和這樣的公制前綴...我發現下面的代碼工作出色,但我不知道如何在html中引用它。地址功能從HTML

我想使它適用於此html代碼,而不是顯示:Ape cost:1000000我希望它顯示1M。

該函數按預期工作,只是我不知道如何在HTML中使用它。

THX :)

<img STYLE="position:absolute; TOP:5px; LEFT:200px;" src='http//:myImage.png' width='95' height='40' onmouseover="this.src=' http//:myImage2.png ';" onmouseout="http//:myImage3.png';" onclick="buyApe()" /> 
 

 

 
<p style="position: fixed; top: -10; left: 300px">Ape Cost: <span id="apeCost">10</span> 
 
    <br />Apes: <span id="ape">0</span> 
 
</p>

function nFormatter(num) { 
 

 
    if (num >= 1000000000) { 
 
    return (num/1000000000).toFixed(1) + 'G'; 
 
    } 
 
    if (num >= 1000000) { 
 
    return (num/1000000).toFixed(1) + 'M'; 
 
    } 
 
    if (num >= 1000) { 
 
    return (num/1000).toFixed(1) + 'k'; 
 
    } 
 
    return num; 
 
}

回答

1

使用此在nFormatter函數的聲明和HTML元素後,你的腳本塊。

var costDisplay = document.getElementById("apeCost"); 
var originalValue = parseInt(costDisplay.innerHTML); 

costDisplay.innerHTML = nFormatter(originalValue); 

這是什麼腳本做:

我取你的apeCost元素通過ID使用document.getElementById。使用該功能,您可以從您的html中選擇任何唯一的ID。然後我們想通過innerHTML更改它的內容,這也是檢索內容的方式。我們costDisplay.innerHTMLparseInt。這使我們確信我們檢索的值是一個整數。最後我們通過nFormatter來轉換它。

0

function foo(a) { 
 
    return a + 1; 
 
} 
 

 
var ape = document.getElementById('ape').firstChild.nodeValue; 
 
document.getElementById('ape').firstChild.nodeValue = foo(ape);
<img STYLE="position:absolute; TOP:5px; LEFT:200px;" src='http//:myImage.png' width='95' height='40' onmouseover="this.src=' http//:myImage2.png ';" onmouseout="http//:myImage3.png';" onclick="buyApe()" /> 
 

 

 
<p style="position: fixed; top: -10; left: 300px">Ape Cost: <span id="apeCost">10</span> 
 
    <br />Apes: <span id="ape">10000000</span> 
 
</p>

你再更換foo你需要的任何功能。