2013-10-02 17 views
6

Tôi có div tiếp theo:hiển thị tooltip chỉ khi lược đang hoạt động

<div class="div-class" style="width:158px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;" title=<%=myDesc%> 

Làm thế nào tôi có thể hiển thị tooltip chỉ khi lược đang hoạt động?

Tôi thấy chức năng này

function isEllipsisActive(e) { 
    return (e.offsetWidth < e.scrollWidth); 
} 

Nhưng tôi không biết làm thế nào để sử dụng nó biết tôi sử dụng jsp và thanh chống

+0

Vì bạn thiết lập nội dung được cắt khi nó _would_ tràn, bạn sẽ không _have_ bất kỳ luồng tràn actuall nào nữa mà bạn có thể kiểm tra ... bạn sẽ phải làm điều đó _before_ áp dụng tràn: bị ẩn. – CBroe

+0

Bản sao có thể có của [HTML - làm cách nào tôi có thể hiển thị chú giải công cụ CHỈ khi dấu ba chấm được kích hoạt] (http://stackoverflow.com/questions/5474871/html-how-can-i-show-tooltip-only-when-ellipsis-is -activated) –

Trả lời

13

Hãy thử một cái gì đó như thế này:

Working DEMO
Working DEMO - with tooltip

$(function() { 
    $('div').each(function(i) { 

     if (isEllipsisActive(this)) 
      //Enable tooltip 
     else 
      //Disable tooltip 
    }); 
}); 

function isEllipsisActive(e) { 
    return (e.offsetWidth < e.scrollWidth); 
} 
+0

Tôi có một câu hỏi ngu ngốc $ (chức năng ...), nơi tôi nên đặt nó? – junior

+0

'$ (tài liệu). Đã' tôi đoán. –

+0

Làm thế nào để làm tương tự với TD thay vì DIV? Bạn có thể làm một ví dụ làm việc về nó? – smartmouse

0

Đối với bất kỳ ai sử dụng qtip (khá phổ biến). Đầu tiên, thêm một lớp vào từng phần tử tràn của bạn.

<span class="ellipsis-text">Some very long text that will overflow</span> 

Sau đó, sử dụng bộ chọn jQuery để chọn nhiều yếu tố như vậy, và áp dụng các plugin qTip (hoặc bất kỳ tooltip khác mà nói đến cái tâm) trên các yếu tố của bạn như vậy:

$('.ellipsis-text').each(function() { 
    if (this.offsetWidth < this.scrollWidth) { 
     $(this).qtip({ 
      content: { 
       text: $(this).text() 
      }, 
      position: { 
       at: 'bottom center', 
       my: 'top center' 
      }, 
      style: { 
       classes: 'qtip-bootstrap', //Any style you want 
      } 
     }); 
    } 
}); 
Các vấn đề liên quan