2016-04-13 16 views
3

Metni seçtiğinizde görüntülenen mavi kutunun boyutunu (genişliğini ve yüksekliğini) almanın mümkün olup olmadığını bilmek istedim. Get selection text width height and sizeMavi metin seçiminin boyutu nasıl alınır?

+0

Ne denediniz? – Xzandro

+0

Henüz bir şey yok. Nasıl yapılacağına dair hiçbir fikrim yok. Hala programlamada yeni başlayan biriyim. –

cevap

1

document.getElementById("area").addEventListener("mouseup", function() { 
 
    var bcr = getSelection().getRangeAt(0).getBoundingClientRect(); 
 
    document.getElementById("info").innerHTML = "W: "+ bcr.width +' H:'+ bcr.height; 
 
}, false);
<div id="area"> 
 
    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quaerat consectetur incidunt vel praesentium cum blanditiis tempora doloribus culpa odit! Labore at cum ad, voluptas nobis nam iste non omnis vitae? 
 
</div> 
 
<b id="info"></b>

Yani bu yöntem,

olarak genişliğini sağlayan herhangi bir değere şimdi alabileceğiniz bcr değişkene seçimin aralığını .getBoundingClientRect() aldıktan sonra, boy, üst, sol, sağ, alt

https://developer.mozilla.org/en/docs/Web/API/Element/getBoundingClientRect

+0

Cevabınız için teşekkürler Roko, ama metni seçtiğim için seçim boyutlarını alabileceğimi umuyordum. Örnek, "metin" kelimesini seçiyorum ve bu metin için seçim kutusunun boyutunu veriyor, ancak seçtiğim her metin için çalışmalı. Seçilen metni çalışma süresinden daha uzun bir alana yerleştirmenin bir yolu varsa. –

+0

@HebertAG Tamam, benim cevabımı, herhangi bir şekilde '.getBoundingClientRect()' :) –

+0

kullanın. Teşekkürler! Seçim kutusu konumunu (x ve y) de alabilmemin bir yolu var mı? Bu sadece meraktan yoksun, istediğim sadece boyutlardı. –

İlgili konular