Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.01.2018, 11:05
Новичок на форуме
Отправить личное сообщение для etulpan Посмотреть профиль Найти все сообщения от etulpan
 
Регистрация: 07.02.2017
Сообщений: 4

скрипт вывода рекламного блока внутри статьи
Добрый день. Есть скрипт вывода рекламного блока внутри статьи после определенного количества тегов <p> а как сделать , чтобы выводилось после n-кол-ва тега <br>? Если не сложно подскажите пожалуйста.

код Adsense надо вставить в шаблон перед контентом, обернув его в div какого-то класса:
<div class="myadsense">
... код Adsense ...
</div>
2. В статье использовать теги <p>. Середину статьи мы будем искать именно по ним: посчитаем сколько всего абзацев, например 10 и вставим рекламу после 5-го. Понятно, что тут мы упрощаем, ведь в статье могут быть списки, таблицы, цитаты и т.п.
3. В конце шаблона помещаем javaScript (или выносим его в отдельный файл и подключаем в конец шаблона), примерно такой :
$(function(){
   var insert_after = 4;
   var n =   parseInt($(".article p").length);
   if (n >= insert_after){
       $($(".article p")[insert_after]).after($(".myadsense"));
   };
});
Ответить с цитированием
  #2 (permalink)  
Старый 08.01.2018, 11:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

etulpan,
в чём проблема?
Ответить с цитированием
  #3 (permalink)  
Старый 08.01.2018, 11:34
Новичок на форуме
Отправить личное сообщение для etulpan Посмотреть профиль Найти все сообщения от etulpan
 
Регистрация: 07.02.2017
Сообщений: 4

Сообщение от рони Посмотреть сообщение
etulpan,
в чём проблема?
если я вставляю вместо р br скрипт не работает.
$(function(){
   var insert_after = 4;
   var n =   parseInt($(".article br").length);
   if (n >= insert_after){
       $($(".article br")[insert_after]).after($(".myadsense"));
   };
});
Ответить с цитированием
  #4 (permalink)  
Старый 08.01.2018, 11:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

etulpan,

<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function(){
   var insert_after = 4;
   var n =   parseInt($(".article br").length);
   if (n >= insert_after){
       $($(".article br")[insert_after]).after($(".myadsense"));
   };
});

  </script>
</head>

<body>
<div class="myadsense">
 ... код Adsense ...
 </div><div class="article">
<br>01
<br>02
<br>03
<br>04
<br>05
<br>06
<br>07
<br>08
<br>09
<br>10</div>

</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 08.01.2018, 12:08
Новичок на форуме
Отправить личное сообщение для etulpan Посмотреть профиль Найти все сообщения от etulpan
 
Регистрация: 07.02.2017
Сообщений: 4

Спасибо большое
Ответить с цитированием
  #6 (permalink)  
Старый 14.01.2021, 23:48
Новичок на форуме
Отправить личное сообщение для dantula Посмотреть профиль Найти все сообщения от dantula
 
Регистрация: 14.01.2021
Сообщений: 2

Сообщение от рони Посмотреть сообщение
etulpan,

<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function(){
   var insert_after = 4;
   var n =   parseInt($(".article br").length);
   if (n >= insert_after){
       $($(".article br")[insert_after]).after($(".myadsense"));
   };
});

  </script>
</head>

<body>
<div class="myadsense">
 ... код Adsense ...
 </div><div class="article">
<br>01
<br>02
<br>03
<br>04
<br>05
<br>06
<br>07
<br>08
<br>09
<br>10</div>

</body>
</html>
Здравствуйте. Подскажите пожалуйста, как прикрутить счётчик к вышенаписанному коду, чтобы к примеру выводить блок рекламы через каждый третий тег
Ответить с цитированием
  #7 (permalink)  
Старый 15.01.2021, 00:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

dantula,
<!DOCTYPE html>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
$(function(){
   var insert_after = 3, block = $(".myadsense:first");
   $(".article br").each((i, el) => {
   if(i && (i % insert_after) == 0)  $(el).after(block.clone());
    });
block.remove();
});
  </script>
</head>
<body>
<div class="myadsense">
 ... код Adsense ...
 </div>
 <div class="article">
<br>01
<br>02
<br>03
<br>04
<br>05
<br>06
<br>07
<br>08
<br>09
<br>10</div>
</body>
</html>

Последний раз редактировалось рони, 15.01.2021 в 02:07.
Ответить с цитированием
  #8 (permalink)  
Старый 15.01.2021, 02:01
Новичок на форуме
Отправить личное сообщение для dantula Посмотреть профиль Найти все сообщения от dantula
 
Регистрация: 14.01.2021
Сообщений: 2

рони,
Благодарю!
Ответить с цитированием
  #9 (permalink)  
Старый 15.01.2021, 02:08
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

dantula,
код немного исправлен, скопируйте снова.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрипт для вывода текста поверх картинки sergeus Работа 1 19.02.2012 06:01
Запереть скрипт внутри блока Vineg Events/DOM/Window 2 25.01.2011 03:16
Можно ли как-то сократить скрипт случайной цитаты (см. внутри)? Hyuga_Nia Общие вопросы Javascript 4 20.01.2011 22:00
Как можно сократить (и можно ли) этот скрипт (см. внутри)? Hyuga_Nia Общие вопросы Javascript 28 20.01.2011 21:48
Скрипт вывода текста из файла yarunga Общие вопросы Javascript 6 06.05.2010 15:08