2012-09-15 34 views
1

div中的內容比它可以包含的要多。如何檢測是否有任何溢出?

我想隱藏所有不可見的文本,或者如您所見水平「半切」。

此外,我需要隱藏最後一個可見句子或給定數量的字母,並在文本的可見部分末尾粘貼諸如「閱讀更多」而不是它的內容。

第二部分我認爲更容易。我不知道如何處理第一部分。

+0

您需要獲取字體指標,測量文本的寬度,並檢查它是否超過div的寬度。 – user1406062

+0

我不明白...你想隱藏已經不可見的東西嗎?順便說一下,我瞭解第二部分。 – Stphane

回答

1

您可以使用CSS。

瀏覽器支持:http://caniuse.com/#search=ellipsis

.ellipsis { 
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis; 
    -o-text-overflow: ellipsis; 
} 

或者使用jQuery插件來做到這一點。

0

下面的代碼可以幫助你:

function isOverFlow(id){ 
    var elem = document.getElementById(id) 
    if(elem.scrollWidth - jQuery(elem).width() > 0){ 
     return true; 
    } 
    return false; 
}