2015-07-14 14 views
5

Elips eklemek ve metni tek bir satırda göstermek için css özelliği text-overflow : ellipsis olan bir divum var.Metin taşması özelliği uygulandığında sonuç metni nasıl alınır

jquery .text() veya .html()'u gerçekleştirdiğimde, tam dizeyi elde ediyorum, ancak tam olarak div içinde tam metin görüntülenmesini istiyorum (tam dizgiyi değil).

JQuery veya JS kullanarak tam görüntüleme dizesini nasıl çekebilirim?

Gerçek String = "abcdefghijklmnop" nedeniyle CSS div "abcd..."

+1

CSS yalnızca dizeleri işlemek değil, stilleri uygulamaktır. –

+0

olası kopyası [jquery'yi kullanarak yalnızca elips metni al] (http://stackoverflow.com/questions/21095222/get-only-the-ellipsis-text-using-jquery) –

cevap

0

Bu mümkün değildir (jQuery veya JS kullanarak) "abcd..."

My beklenen sonucu görüntüler CSS taklit ve dizelerle yeniden denemeden JS kullanarak elips.

Bunun nedeni, CSS'nin HTML kaynağının kendisini değil, yalnızca kullanıcıya görüntülenenleri değiştirmesidir. Belgenizin kaynak kodunu kontrol ederek bunu doğrulayabilirsiniz. Bu, .text() veya .html()'u kullandığınızda, CSS filtresi aracılığıyla görüntülenenler yerine DOM'den değerler aldığınız anlamına gelir.

Oldukça iyi bir iş çıkaran birkaç korsanın var, ancak JS'nin CSS'nin metni nasıl oluşturduğunu doğru olarak taklit etmesinin hala bir garantisi yok. Eğer değerlerin sayısını biliyorsanız

0

Eğer, bunun böyle olacağını daha girilen alır hep 4 değerleri ise sadece örneğin JS Beğen kullanabilirsiniz sonra her zaman ihtiyaç

JS Fiddle

formu

<form action="" method="post"> 
    <p> 
    <label for="txt">My txt: </albel> 
     <input type="text" id="myTxt"><br /> 
    <input type="submit" id="submitButton" value="Send"> 
    </P> 
</form> 

js

document.getElementById('submitButton').onclick = function() { 

    myVariable = document.getElementById("myTxt").value; 
    alert(myVariable.slice(0, 4)); 
}; 

Metin kutusuna ne yazılırsa yazılır, ilk 4 karaktere bölünür.

İlgili konular