Я прошу прощения за длину этого вопроса, но я хочу убедиться, что я приведу факты.
У меня новый рекламный сервер, который делает 99% того, что мне нужно. Единственная область, в которой он работает не так хорошо, - это отправка текстовых объявлений. Вот сценарий. Мне нужно отправить электронное письмо, и этому письму нужны текстовые объявления на случай, если у пользователя отключены изображения. Наш почтовый клиент (Lyris) использует httpget
для захвата нашей динамически генерируемой страницы. Теперь вот в чем проблема. Новый рекламный сервер использует JavaScript для захвата рекламы со своего сервера. Они предлагают совместимые с электронной почтой теги, но ничего для текстовых объявлений. Поэтому я решил загрузить текстовое объявление, используя его стандартный javascript на странице. Затем я бы вытащил эти данные в переменную на основе идентификатора. Пример: span id = "ad"
Вот код jQuery:
var j = jQuery.noConflict();
j(document).ready(function () {
var ad = j('#jscript').html().replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,'');
j('#ad').html(ad)
});
Вот мой код сценария для вызова моей позиции объявления и отображения на экране:
<span id="jscript" style="display:none">
<script>
<!--
OAS_AD('Position1');
-->
</script>
</span>
Итак, я собираю данные на основе моего идентификатора диапазона, а затем удаляю любые ссылки на теги скрипта. То, что у меня осталось, это просто текст объявления, который идеально подходит. Я могу вывести это на экран, и он выглядит и прекрасно работает при просмотре через браузер. Но поскольку я делаю все это в jQuery, когда отправляю через Lyris, он явно игнорирует мой javascript.
Так, как я смогу вывести результаты var ad = j('#jscript').html().replace(/)<[^<])<\/script>/gi,'');
в то, что мой почтовый клиент не проигнорирует?