Tôi cần javascript để phát hiện từng dòng trình duyệt được bao bọc văn bản và gói nó vào <span class="line">
.Phát hiện các đường bao bọc của trình duyệt qua javascript
Tôi đã xem các bài viết nói về đo lường trục y của từng từ, nhưng chưa thấy một giải pháp vững chắc.
Đây là những gì tôi có cho đến nay. Xem trên Jsfiddle.
HTML
<div class="inline-bg">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec cursus condimentum metus, et placerat augue rutrum vitae. Donec arcu lorem, eleifend at elementum eget, consectetur vel lacus. Nam euismod iaculis varius. Phasellus sed dui diam. Nullam facilisis, diam sit amet sagittis cursus, metus tortor gravida erat, ut fringilla risus ipsum eu nisl.</div>
JS/jQuery
(function($){
$.fn.inlinebackground = function() {
$.each(this, function(i,t) {
var split = $(t).html().split(' ');
var output = '';
$.each(split, function(i,o){
output += '<span class="line">'+o+'</span>';
if (i < (split.length - 1)) {
output += '<br>';
}
});
$(t).html(output);
});
}
})(jQuery);
/* End Plugin Code */
// Run the plugin on .news-caption
$(function(){
$('.inline-bg').inlinebackground();
});
CSS
.inline-bg { width: 200px; line-height:3em; }
.inline-bg span.line { background-color: black; color: white; padding: 15px; }
Cảm ơn câu trả lời. Nó không quấn từ cuối cùng từ ví dụ của bạn ... hoặc nếu chỉ có một từ. – timofey
Không chắc chắn nơi bạn nhìn thấy từ cuối cùng không gói. Tôi chưa bao giờ nghĩ đến 1 từ. Sẽ phải điều chỉnh vào ngày mai là đêm khuya ở đây. Ngoài ra .. trình duyệt nào? Tôi đã không kiểm tra trình duyệt chéo này .. là giai đoạn rất sớm và có thể sẽ cần điều chỉnh – charlietfl
Tôi đang ở trong chrome, nhưng nó giống như trên tất cả các trình duyệt.Nhìn vào nguồn html trên ví dụ của bạn trên jsfiddle. – timofey