2013-10-01 1 views
5

Çoğu tarayıcıda (en yeni nesil) 'A' veya Boşluk gibi bir tuşa yazdığınızda fare imlecinin gizlendiğini biliyorum. Bu, kullanıcının ne yazdığını görmesine izin vermektir. İmleci, bir piksel için fareyi hareket ettirdiğiniz anda görünür hale gelir.Tuşa basıldıktan sonra imlecin Tarayıcıda gizlenmesini engelle

İşte şimdi sorun geliyor - Bu tarayıcıda her yerde olur, hatta bir div veya benzeri bir giriş-olmayan öğeye odaklandığımda bile. Ancak, kullanıcı tuşlara kısayol olarak kullandığımdan, bir tuşa bastıktan sonra tarayıcının imlecimi gizlemesini istemiyorum.

Soru şu: - bu durumun gerçekleşmesini önlemek için herhangi bir yol ya da hile ya da bir şey var mı, yoksa imleç, tuşa bastıktan sonra tekrar otomatik olarak gösteriliyor mu?

Web üzerinde görünmeyen div'ler vb. Gibi çeşitli "hack'ler" denedim, ancak başarılı olmayan her şeyi denedim.

DÜZENLEME: Sorgulandığı gibi, bu davranışı en son MAC-OS-X'de bulunan her Tarayıcıda (Chrome en son, Firefox en son, Safari son) yaşıyorum.

+3

http://jsfiddle.net/4rKMx/2/ Linux/Ubuntu Chrome veya Firefox ile eline geçmez:

-edit- İşte Kavram bir kanıtı bu. Eklentinizin yüklü olmadığından emin misiniz? Veya fare sürücünüzün bir özelliğini etkinleştirdiniz mi? –

+1

Açıkladığınız davranışları çoğaltmaya çalıştım ama benim için işe yaramıyor gibi görünüyor. Windows7 + en son krom VEYA en son Firefox. Kullandığınız ortamı belirtebilir misiniz? – 4ndrew

+0

Mac OS X üzerinde Chrome'da onaylandı 10.8.4 –

cevap

2

Sadece bu olası çözüm düşündüm ama rahatsız edici olmayan bir şekilde bunu yapmanın gerçekten zor olacak kullanıcı:

  1. zaman imleç hareket eder, belge keyUp gözlemlediği zaman hala orada (gerçek imleç son görüldüğü yer tam koordinatları bir imlecin bir resim gösteren, bu pozisyon
  2. var kazandırabileceği gibi gizli)
  3. Gerçek imleç tekrar taşıdığında
  4. , görüntüyü gizlemek Buradaki sorun göstermek için hangi imleç görüntü bilerek olacak

(aslında 1 ile bu fonksiyonu birleştirme). İlk olarak, kullanıcının Mac'te (veya imleci gizleyen başka bir işletim sisteminde) olup olmadığını, ancak ne yaptığınıza bağlı olarak hangi imlecin gösterileceğini saptamanız gerekir. Bu, istediğiniz her öğe için hangi imlecin gösterildiğini ve aynı imlecin bir görüntüsünü göstermeniz gerektiğini gösterir.

Temelleri/varsayılanları, bağlantıların ve girişlerin (sırasıyla pointer ve text) gezinmesini kapsayan bazı css kurallarını ekleyerek kapatabilirsiniz, ancak kullanıcı işletim sisteminde tanımlı özel imleçler kullanıyorsa ne olabilir?

Henüz herhangi bir kod denemedim, bu sadece teoride çalışması gereken bir kavramdır, bu yüzden daha fazla yardıma ihtiyacınız varsa bana bildirin, ancak bunu gerçekleştirmeye karşı dürüstçe tavsiye ederim. Çözdüğünden daha fazla sorun getirecek, imo.

+0

Özel bir imleç kullanıyorum. Senin "çözümün" bunu nasıl hallederdi? –

+0

Not. Bu cevapta açıkça belirttiğim şey budur, bu yüzden bunu önermem. Sadece teknik olarak şunu belirtmek için tamamlanmış olmak istedim, bunu yapmak da mümkün (mükemmel bir çözüm olmasa bile) –

+0

Bu gerçekten iyi bir fikir! Yaptığım tek sorun, imleçlerimin * .cur biçiminde olması, dolayısıyla bir görüntü kullanılarak doğrudan oluşturulamamasıdır. – anderswelt

4

Bu, tarayıcı davranışı değil, işletim sistemi davranışları ve özellikle Mac davranışıdır. İmleç sadece tarayıcıda yazıyorsanız, Mac'inizdeki herhangi bir uygulamada gizlenmez.

Bu, tarayıcının imleç üzerinde hiçbir bilgi veya kontrole sahip olmadığı anlamına gelir, çünkü daha yüksek bir seviyeden gizlenmiştir. İmleci örneğin CSS veya JavaScript ile değiştirebilirsiniz, ancak siz hareket edene kadar gösterilmeyecektir. İmleci JavaScript kullanarak gerçekte hareket ettiremezsiniz, ancak yine de şüphe etseydim bile yardımcı olabilirdi çünkü işletim sistemi imlecin hareket etmesinin bir sinyalini almadı.

Ayrıca apple.stackexchange.com bu soruya bakın: How do I disable hiding of the mouse pointer while typing text?