SORU
4 Kasım 2008, Salı


Button, Başlat düzeltme konumu karakter

Nasıl metin alanı JavaScript kullanarak şapka konumu alabilirim?

Örneğin:
This is| a text

Bu 7 dönmelidir.

Nasıl dizeleri seçme/imleci çevreleyen dönmek için alır mısın? örneğin:

'This is', '', ' a text'
Eğer kelime "vurgulanır, 'This ', 'is', ' a text' geri dönüş."

CEVAP
4 Kasım 2008, Salı


Firefox, Safari ve diğer Gecko tabanlı tarayıcılar) kolayca button kullanabilirsiniz.selectionStart, ama IE için böyle bir şeyler yapmak zorunda kalacak, böylece işe yaramaz:

function getCaret(node) {
  if (node.selectionStart) {
    return node.selectionStart;
  } else if (!document.selection) {
    return 0;
  }

  var c = "\001",
      sel = document.selection.createRange(),
      dul = sel.duplicate(),
      len = 0;

  dul.moveToElementText(node);
  sel.text = c;
  len = dul.text.indexOf(c);
  sel.moveStart('character',-1);
  sel.text = "";
  return len;
}

(complete code here)

Ben de bir WordPress kullanmak size bunu ve daha fazlasını yapmak için izin verir FieldSelection Eklenti, muayene...

Düzenleme:Yeniden hayata aslında ben yukarıdaki kodu:

function getCaret(el) { 
  if (el.selectionStart) { 
    return el.selectionStart; 
  } else if (document.selection) { 
    el.focus(); 

    var r = document.selection.createRange(); 
    if (r == null) { 
      return 0; 
    } 

    var re = el.createTextRange(), 
        rc = re.duplicate(); 
    re.moveToBookmark(r.getBookmark()); 
    rc.setEndPoint('EndToStart', re); 

    return rc.text.length; 
  }  
  return 0; 
}

Örnek here Kontrol edin.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DrakeVEVO

    DrakeVEVO

    17 AĞUSTOS 2009
  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007
  • tutvid

    tutvid

    19 AĞUSTOS 2006