Kullanıcıya belirli şeyleri yazarken yardımcı olmak için <textarea>
'da bir açılır liste görüntülemek istiyorum. Bunu mevcut IDE'lerden kod tamamlama olarak biliyorsunuz. Bir şeyler yazmaya başladığınızda, geçerli imleç/caret konumunun sağında bir açılır pencere görünür ve metin girişinizi tamamlamak için ok tuşlarını kullanarak gezinebilirsiniz.Bir HTML metin yazımındaki imleç konumunu (X/Y değil, çizgi/sütun) nasıl bulabilirim?
I (imleç konumunun karakter indeksi yani) Metin dizesinde how to get the cursor position biliyorum ama o kadar <textarea>
elemanın iç imlecin X/Y koordinatları (offsetWidth
ve offsetHeight
gibi bir şey) almak için nasıl bilmiyorum Liste elemanımı orada yerleştirebilirim. HTML/JavaScript’te bu mümkün mü ve nasıl çalışırdı? Eğer şapka pozisyonunda boş Span öğesi eklemek ve açılan görüntülemek için bu elemanın konumunu alabilir: (jsfiddleCKeditor veya Rich Text Editor veya daha iyi gibi bir iç çerçeveye) düzenlenebilir html girişi ile
+ 1 Bu oldukça iyi bir soru! – Ben
Karakterlerin sayısını ve kutunun genişliğini biliyorsanız, ortalama karakter genişliği/çizgi yüksekliğine göre konumu tahmin edebilir misiniz? –
Önerilen diğer soruyu okudum, ancak cevabını sorunun bir çözümü olarak görmüyorum. Ayrıca, bu 3 yaşında ve tarayıcılar ve standartlar bu arada gelişmiştir. Bunun çalışması için geçerli bir tarayıcı gerektirmekten korkmuyorum. – ygoe