2010-03-30 17 views
6

Bir tablom var ve her hücrede dizeleri yerleştirmek istiyorum, ancak bunlar hücre genişliğinden çok daha genişler. Hat kesintisini önlemek için, dizeleri hücreye sığacak şekilde kısaltmak ve ipin daha uzun olduğunu belirtmek için '...' kısmını eklemek istiyorum.jQuery: ayarlı genişliğe sığdırmak için dize uzunluğunu kısaltın

Tablonun yaklaşık 40 satırı vardır ve her bir hücreye yapılmalıdır, bu yüzden bir hızlı olması önemlidir. Bunun için JS/jQuery kullanmalı mıyım?

Nasıl yaparım?

Zaman ayırdığınız için teşekkür ederiz.

Saygılarımızla
Marius

+1

Eğer ben olsaydım, bir JSON API'sinden veya bir şeyden veri alınmadığı sürece bunu sunucuda yapmayı tercih ederim. (Sunucunun bunu yapması bile güzel olabilir; tahmin ettiğim semantiklere bağlıdır.) – Pointy

+0

Bununla ilgili düşündüm; Metnin genişliğini px olarak bilmezdim ve her kullanıcı için değişken yazı tipleri için bir oda bırakmak zorunda kalırdım. – Marius

+0

Gerçekten [jQuery.dotdotdot] (http://dotdotdot.frebsite.nl/) 'yi beğeniyorum. – Mitar

cevap

4

bu 8 olduğu hile yapmak gerekir Eğer ben jquery width() yardım etmelisiniz Yorum cevaplamak için

$('td').each(function(){ 
    $(this).text($(this).text().substring(0,8)+"..."); 
}); 

tutmak istediğiniz metnin boyutunu Gidiyorsunuz ama sanırım kaygan bir slop yönelttiğinizde, metni bir div olarak veya flexigrid veya jgrid

+0

Her bir harfin ikinci bağımsız değişkenleri belirlemek için ne kadar geniş olduğunu nasıl hesaplayabilirim? Teşekkürler – Marius

4

benim jQuery eklentisi kullanın. Tüm vakaları ele alır, metin taşmasını kullanır: elips varsa ve çok hızlı.

İndir: github.com/MarcDiethelm/jQuery-Shorten

Demo & Doc: http://web5.me/jquery/plugins/shorten/shorten.doc.html

Sen nasıl yapılandırabilirsiniz metin uçları (üç nokta). Varsayılan üç noktalı bir char ("…", & hellip ;, Unicode: 2026), ancak işaretleme dahil olmak üzere istediğiniz herhangi bir şeyi kullanabilirsiniz.

'seçilen' elemanının metin genişliği (örneğin. Yayılabilir veya Div) tuval kullanılarak ölçülmüştür veya geçici tablo hücresinin içine yerleştirerek ve (ilk etkinlik için bir tahminde kullanılarak), kısa ve daha kadar tekrar ölçülür (ve eklenen elips veya metin) bloğun içine sığar. 'Selected' öğesindeki bir araç ipucu, orijinal metnin tamamını görüntüler.

+1

Güzel eklenti. Herkesin ihtiyaçlarına uygun olmayan bir GPL 3.0 lisansı taşıdığını belirtmek gerekir. –

İlgili konular