Подтвердить что ты не робот

Асинхронные объявления Google против синхронного

Я использую Google DFP.

Если я использую синхронные объявления из Google, мой сайт загружается медленно, так как ему нужно загрузить объявление, в то же время он загружает веб-сайт, и если объявление требует много времени, чтобы ответить, загрузка страницы приостанавливается.

Если я использую асинхронные объявления, это не проблема, так как страница загружается или загрузка не загружается. Другими словами, это ускоряет загрузку сайта. Дело в том, что при использовании асинхронных объявлений создается div с фиксированной шириной и высотой независимо от того, отображаются ли объявления или нет. Таким образом, обычно это создает много свободного места на моем сайте, так как не все позиции объявлений используются. То же самое происходит с синхронными объявлениями.

Google предлагает третий выбор, который не создает div, он просто использует javascript для показа рекламы, а если в этом пространстве нет рекламы, то она просто не отображает пустое пространство, которое хорошо, однако он ведет себя синхронно...

Что я хочу - это какой-то метод использования асинхронных объявлений, а не пустые пробелы, если ни одно объявление не публикуется.

Спасибо.

4b9b3361

Ответ 1

Я думаю, что вы ищете

googletag.pubads().collapseEmptyDivs();

Это скроет пустые div, когда нет объявлений для показа. Вызовите его перед этой строкой:

googletag.enableServices();

Дополнительная документация здесь, для справки: http://support.google.com/dfp_premium/bin/answer.py?hl=en&answer=1650154

Ответ 2

Попробуйте следующее:

<div id='div-gpt-ad-YOURDFPIDGOESHERE-1' style='width:auto; height:auto; margin:0px auto; text-align:center;'>

Это должно растягивать или сжимать div для соответствия размерам объявлений (и даже центрировать меньшие объявления в более широком рекламном слове).

Ответ 3

Добавьте display: none;, как в встроенном стиле, к содержащему div.

Метод collapseEmptyDivs добавляет встроенный стиль display: none; к родительскому контейнеру div. Чтобы предотвратить появление лишних пробелов, я сначала попытался добавить display: none; в качестве стиля CSS в моей таблице стилей, но стиль не был удален, когда объявления были загружены в целевое пространство рекламного блока успешно. Перемещение дисплея: нет; inline, похоже, устранил проблему.

Ответ 4

хорошо.. вы можете попробовать обходное решение.. я не совсем уверен. но вы можете попробовать.

У вас есть DIV, где ваши объявления будут загружаться асинхронно, поэтому вы можете добавить в него элемент, любой фиктивный элемент и приложить прослушиватель событий, чтобы знать, когда он будет заменен вашими объявлениями.

вы можете прослушивать событие DOMNodeRemoved, которое запускается при удалении node, и вы можете изменить размер своего div соответственно.. сообщите мне, если он работает или какой-либо прогресс в этом.