SORU
6 HAZİRAN 2011, PAZARTESİ


Nasıl şapka işareti(imleç) doğal ses elemanı pozisyonu (dıv) ayarlamak için?

Örnek olarak bu basit bir HTML var:

<div id="editable" contenteditable="true">
  text text text<br>
  text text text<br>
  text text text<br>
</div>
<button id="button">focus</button>

Ben basit bir şey - ben düğmesine tıkladığınızda, (imleç) düzenlenebilir div yeri belirli şapka içine yerleştirmek istiyorum. Web üzerinden arama yapmak, bu JS düğmesini ekledim ama çalışmıyor () FF, Chrome,:

var range = document.createRange();
var myDiv = document.getElementById("editable");
range.setStart(myDiv, 5);
range.setEnd(myDiv, 5);

El ile bu şekilde düzeltme konumu ayarlamak mümkün mü ?

CEVAP
6 HAZİRAN 2011, PAZARTESİ


Çoğu tarayıcıda Range Selection nesneleri gerekir. Sana bir düğüm olarak seçim sınırları ve bir düğüm içinde mahsup her belirtin. Örneğin, ikinci satır metin beşinci karakter için şapka ayarlamak için aşağıdakileri yapmak istiyorum:

var el = document.getElementById("editable");
var range = document.createRange();
var sel = window.getSelection();
range.setStart(el.childNodes[2], 5);
range.collapse(true);
sel.removeAllRanges();
sel.addRange(range);

YANİ < 9 tamamen farklı bir şekilde çalışıyor. Eğer bu tarayıcıları desteklemek isterseniz, farklı bir kod gerekir.

jsFiddle örnek: http://jsfiddle.net/timdown/vXnCM/

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS North America

    ASUS North A

    12 AĞUSTOS 2008
  • audivila

    audivila

    5 HAZİRAN 2009
  • Elly Awesome

    Elly Awesome

    15 ŞUBAT 2010