這是鍵盤圖像。我可以找出數字的座標。但是我在點擊圖像中的特定座標時遇到了問題。所以任何人都可以請幫助我點擊圖像的特定座標在JavaScript中。提前致謝。
-1
A
回答
0
您可以使用html地圖標籤refer here作爲文檔。基本上,您需要定義鍵盤的形狀區域。然後你可以使用它與JavaScript。您還可以使用工具來映射您的鍵盤圖像,即this tool。
0
您可以使用Event Object的clientX
和clientY
來獲取您的點擊座標,然後減去圖像角落的座標。
HTML
<img id="keys" src="http://i.stack.imgur.com/gTiMi.png">
<div>
Spot is: <span id="spot"></span>
</div>
的JavaScript
var keys = document.getElementById("keys");
var keysTop = keys.offsetTop;
var keysLeft = keys.offsetLeft;
var spot = document.getElementById("spot");
document.getElementById("keys").onclick = function (event) {
spot.innerHTML = "(" + (event.clientX - keysLeft) + " , " + (event.clientY - keysTop) + ")";
// now you can ask if spot is between (0,0) and (38,38) to refer to 1 button for instance
}
DEMO
這裏有一個JSFiddle。
0
您必須將圖像設置爲div
背景,然後點擊鼠標座標時需要點擊該座標div
(請參見Get mouse position within div?以獲取div內的鼠標座標)。鑑於你的圖像寬度爲200px,並且你有5列數字,這意味着關鍵字'0'在0px和40px之間,關鍵字1在40px和80px之間等(對於行是相同的)。現在,您對每個數字都有頂部,右側,左側和底部界限,因此,瞭解鼠標的座標,您應該能夠識別特定的按鍵。
1
如何使用<map>
<area>
每個按鈕現在都是錨點。添加了一個小JS,它會提醒哪個按鈕被其ID所點擊。
var map = document.getElementById('Map');
map.addEventListener('click', eXFunction, false);
function eXFunction(e) {
if (e.target !== e.currentTarget) {
var clickedBtn = e.target.id;
alert("Button: " + clickedBtn);
}
e.stopPropagation();
}
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>ImageMap NumberPad</title>
</head>
<body>
<section>
<img src="http://i.stack.imgur.com/gTiMi.png" alt="" usemap="#Map" />
<map name="Map" id="Map">
<area id="a1" title="1" href="#" shape="poly" coords="6,4,6,36,34,34,36,4" />
<area id="a2" title="2" href="#" shape="poly" coords="44,3,77,3,76,36,43,36" />
<area id="a9" title="9" href="#" shape="poly" coords="82,7,115,5,117,36,82,37" />
<area id="a7" title="7" href="#" shape="poly" coords="124,2,157,3,157,36,124,37" />
<area id="a3" title="3" href="#" shape="poly" coords="164,5,197,3,198,37,162,37" />
<area id="a0" title="0" href="#" shape="poly" coords="4,43,37,43,37,76,3,76" />
<area id="a5" title="5" href="#" shape="poly" coords="44,43,77,43,76,76,44,76" />
<area id="a4" title="4" href="#" shape="poly" coords="83,44,117,43,116,75,82,75" />
<area id="a8" title="8" href="#" shape="poly" coords="123,44,157,42,158,76,123,76" />
<area id="a6" title="6" href="#" shape="poly" coords="198,43,197,76,163,76,165,43" />
</map>
</section>
</body>
</html>
0
一個簡單而正確的方法是使用圖像map
所以,你可以做這樣的事情:
$(document).ready(function() {
$(".area").click(function(e){
e.preventDefault();
alert("You clicked :"+$(this).data("number"));
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<img id="image" src="http://i.stack.imgur.com/gTiMi.png" usemap="#Map" >
<map name="Map">
<area data-number="1" class="area" shape="rect" coords="5,5,35,30" href="#">
<area data-number="2" class="area" shape="rect" coords="50,5,75,30" href="#">
<area data-number="9" class="area" shape="rect" coords="90,5,115,30" href="#">
<area data-number="7" class="area" shape="rect" coords="130,5,155,30" href="#">
<area data-number="3" class="area" shape="rect" coords="170,5,195,30" href="#">
<area data-number="0" class="area" shape="rect" coords="5,50,35,75" href="#">
<area data-number="5" class="area" shape="rect" coords="50,50,75,75" href="#">
<area data-number="4" class="area" shape="rect" coords="90,50,115,75" href="#">
<area data-number="8" class="area" shape="rect" coords="130,50,155,75" href="#">
<area data-number="6" class="area" shape="rect" coords="170,50,195,75" href="#">
</map>
相關問題
- 1. javascript webdriver.io:點擊特定的座標
- 2. 使用Javascript鼠標點擊圖像座標
- 3. 將圖像複製到特定座標
- 4. 如何在Qt中的特定座標上顯示圖像?
- 5. 將圖像/圖標添加到chart.js中的特定座標
- 6. 點擊熱圖和鼠標座標! - Javascript
- 7. 如何使用x和y單擊座標來模擬.NET WebBrowser控件中的圖像按鈕單擊?
- 8. 圖像上點擊點的座標HTML
- 9. 如何禁用右鍵單擊保存一個特定圖像
- 10. 用鼠標點擊獲取圖像地圖的座標
- 11. JavaScript單擊X和Y座標
- 12. 如何在調整窗口大小時使用鼠標點擊圖像座標?
- 13. OSX - 使光標點擊特定的屏幕座標
- 14. 如何在圖像中查找特定座標中的像素顏色?
- 15. 如何使用導軌獲得特定座標附近的座標?
- 16. 如何點擊一個元素的特定座標
- 17. 如何通過將鼠標指向圖像上的特定點來獲取java中的圖像像素座標?
- 18. 如何從像素座標計算歸一化圖像座標?
- 19. 使用Javascript在網頁上的特定座標上查找像素顏色
- 20. Javascript使用鼠標座標旋轉圖像
- 21. 什麼座標圖像被點擊?
- 22. 獲取與jquery點擊圖像座標
- 23. 如何使用vba單擊圖像?
- 24. 如何使用PowerShell單擊圖像?
- 25. 如何處理:單擊圖像時使用Javascript生成的相同圖像
- 26. Android - 獲取用鼠標單擊的像素座標
- 27. 如何獲取點擊圖像控件上的座標
- 28. 單擊圖像並使用Javascript生成相同的圖像
- 29. 如何在JavaScript中使用x,y座標來模擬點擊?
- 30. 使用openCV輸入圖像的座標