2016-10-29 2 views

ответ

0

Вы можете использовать JQuery html(function) и перебирать массив разделить на точку.

$('#slidecaption').html(function(_, existing) { 
 
    return existing.trim().split('.').map(function(txt) { 
 
    return txt.length ? $('<p>').text(txt + '.') : ''; 
 
    }); 
 
});
p { 
 
    border: 1px solid #ccc; 
 
    margin: 10px 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="slidecaption">Some text here. Some other text.</div>

Подразумевается, что только точки будут периоды в конце предложения

+0

Отличная работа! Это помогло мне. Большое спасибо! –

1

Используйте функцию html() выбранного объекта, чтобы захватить внутренний HTML-контент. Затем, предполагая последовательное форматирование, вы можете разделить содержимое на список (разделяя либо «.», Либо «.»), Итерации по этому списку. Наконец, используйте метод «добавить» jQuery, чтобы разместить контент там, где вы хотите.

Примечание. Если содержимое несовместимо (например, второй период или вложенный HTML-код), это может потребовать изменения. Но для примера, который вы предоставили, он должен работать нормально.

var inner_content = $("#slidecaption").html() 
var content_parts = inner_content.split("."); 
for(idx in content_parts){ 
    new_content = "<p>" + content_parts[idx] + "</p>"; 
    inner_content.append(new_content) // Or wherever else you want to put it 
}; 
Смежные вопросы