2011-07-31 21 views
14

Flash'a alternatif olarak Javascript ve html5 canvas öğesini kullanarak oyun yapma aşamasındayım. Sorum şu: Mouse imleci/işaretçisini tuval içinde geçerken saklamak için kullanabileceğim bir kod var mı? Yardımı çok takdir ediyor!HTML5 Canvas içeriğinde Fare İmlecini Gizle Tuval Javascript

+0

İlgili (utanç verici fiş): http://stackoverflow.com/questions/1071363/is-it-possible-to-hide-the- imleç-in-a-webpage-using-css-or-javascript –

+0

@Lucas Jones Aynı linki yayınlamak üzereydim, açıkçası biraz daha hızlı bulabilirdiniz. – qw3n

+0

@ qw3n: Sadece cevabımla ilgili bir yoruma bir cevap vermiş olduğum için, StackExchange ™ SuperCollider MultiDropdown ™ 'unun gelen kutusuna ikişer ekledim. –

cevap

14

Bunun için Javascript'e ihtiyacınız olduğunu düşünmüyorum, sadece CSS'yi kullanabilirsiniz. sonra tuval bir div id/sınıf atayın ve CSS şablonunda bu kullanın: Sen imleç stili işlemek için javascript kullanabilirsiniz

* {cursor: none;}

+0

Ah! Çok teşekkür ederim! Bunu deneyeceğim! – Chris

+1

Bu, [CSS3] 'ün (http://dev.w3.org/csswg/css3-ui/#cursor) bir parçasıdır, ancak [CSS2]' nin bir parçası değildir (http://www.w3.org/TR/CSS21/ ui.html # propdef-imleç). – Shi

+0

Bu, Linux'taki en son Firefox'ta çalışmaz. İmleç sayfanın geri kalanı için gizlenir, ancak yine de tuval üzerinde görünür. –

7

. Kod:

<div id="canvas_div_no_cursor"> 
    <!-- canvas here --> 
</div> 
<script type="text/javascript"> 
    document.getElementById('canvas_div_no_cursor').style.cursor = "none"; 
</script> 
+0

Bunu denedim, ancak sadece firefox'ta çalışıyor gibi görünüyor. Ayrıca, CSS'yi bir sebepten dolayı çalıştıramadım, sadece itfaiyede çalıştığına inanıyorum. Çapraz tarayıcı çözümü olup olmadığını bilen var mı? Tüm yardımın için minnettarım. – Chris

+0

@Chris: Test ettiğim gibi IE9 ve Firefox 4.0'da çalışıyor. Opera 11 ve Google Chrome, imleci gizlemiyor. (Belki bazı güvenlik ayarları bunu kısıtlar). – VIK

+0

@Chris jQuery '$ (' # canvas_div_no_cursor ') kullanıldığında, Google chrome imleci gizliyor. Css (' imleç ',' yok ') –

0

(modern tarayıcılarda) en basit yolu tuval üzerine none imleci ayarlamaktır.

tuvalinizi HTML oluşturulursa

yapın: imlecin değeri aşırı basmış değil garanti etmek istediğim için bir stil sayfalık üzerinden bu yana olacaktır

<canvas id="canvas" style="cursor: none;"></canvas> 

. tuvaliniz JavaScript oluşturulursa

yapın:

const canvas = document.createElement('canvas'); 
canvas.style.cursor = 'none'; 
document.body.appendChild(canvas);