Я пытаюсь найти способ (если возможно) использовать javascript для добавления некоторых атрибутов к элементу во время рендеринга и до полной загрузки DOM. Я знаю, это звучит контрпродуктивно, но позвольте мне дать вам некоторую предысторию:
- Я работаю на чрезвычайно ограниченной платформе шаблонов, которая дает мне доступ к некоторым переменным страницы, но им нужны небольшие манипуляции со строками. Я не могу использовать какую-либо предварительную обработку ASP, поэтому это должно происходить на стороне клиента.
- В частности, я пытаюсь добавить разметку микроданных Schema.org к элементу до робота Googlebot, который просматривает содержимое документа.
- По сути, мне нужно изменить значение атрибута с
$5.99
на5.99
.
Вот моя последняя попытка, которая делает модификации DOM правильно, но не раньше, чем валидатор расширенного фрагмента Google обработает страницу:
<div class="pitinfo"><div class="padleft padright"><%Product.BasePrice%></div></div>
<!-- at page bottom -->
<script type="text/javascript">
(function() {
var pricesting = "<%Product.BasePrice%>";
var price = pricesting.slice(1);
$('.pitinfo').attr('itemprop', 'price');
$('.pitinfo').attr('content', price);
})();
</script>
После загрузки я получаю это <div class="pitinfo" itemprop="price" content="9.99">$9.99</div>
, однако инструмент Rich Snippet Testing сообщает мне, что price
не установлено.
Я уже пытался использовать ASP в своем коде шаблона, но хостинг-провайдер не разрешает это.
Можно ли внести изменения в DOM где-то в середине потока рендеринга документа?