Выделить в тег small дробные число прайса
Как можно с помощью JavaScript взять в тег small дробные число, то есть копейки пример как должен быть
<p class="price">630.<small>01</small> ₽</p>
2 последние цифры, кроме символа рубль (₽)
<p class="price">630.01 ₽</p>
<p class="price">50.00 ₽</p>
<p class="price">150.55 ₽</p>
Ответы (2 шт):
Автор решения: Алексей Шиманский
→ Ссылка
document.querySelectorAll('.price').forEach(el => {
let text = el.textContent;
let indexOfPoint = text.indexOf('.');
let result = `${text.substr(0, indexOfPoint + 1)}<small>${text.substr(indexOfPoint + 1, 2)}</small>${text.substr(indexOfPoint + 3)}`;
el.innerHTML = result;
})
.price small {
color: blue;
}
<p class="price">630.01 ₽</p>
<p class="price">50.00 ₽</p>
<p class="price">150.55 ₽</p>
Автор решения: Danil Apsadikov
→ Ссылка
let regexp = /((\.|\s|,)[0-9]{1,2})/;
document.querySelectorAll(".price").forEach(elem => {
elem.innerHTML = elem.innerHTML.replace(regexp, '<small>$1</small>')
});
<p class="price">630 01 ₽</p>
<p class="price">50.00 ₽</p>
<p class="price">150,55 ₽</p>
let regexp = /(\.[0-9]{1,2})/;
document.querySelectorAll(".price").forEach(elem => {
elem.innerHTML = elem.innerHTML.replace(regexp, '<small>$1</small>')
});
<p class="price">630.01 ₽</p>
<p class="price">50.00 ₽</p>
<p class="price">150.55 ₽</p>