Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/35: Рейтинг темы: голосов - 35, средняя оценка - 4.89
 Аватар для Мигрень
21 / 21 / 2
Регистрация: 09.11.2010
Сообщений: 102

Рандобный показ блока при обновлении страницы

13.07.2012, 10:52. Показов 6903. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток

Подскажите как реализовать следующее:
Есть три div блока, как бы его сделать, чтобы при обновлении страницы рандомный блок был видим (допустим display:block), а остальные были display:none?

Единственное дополнение - таких блоков "по три штуки" на странице несколько, поэтому надо чтобы они все при обновлении страницы как-то рандомно показывались

Буду очень благодарен за помощь
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.07.2012, 10:52
Ответы с готовыми решениями:

Скрытие/показ блока при клике
Всем привет кто подскажет как сделать чтобы при нажатии на блок(которому прописана событие клика) открывался скрывающийся блок и также...

Смена класса блока при обновлении на аякс
Доброго времени суток веб-мастера! Такой вопрос к вам поскольку только изучаю jquery и ajax коечто смог сделать. Но столкнулся с...

Показать id при обновлении страницы
Есть кнопка, нажимая на неё меняется URl без перезагрузки $('.knopka').click(function(event){ url = '?id=1'; ...

4
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
13.07.2012, 12:32
на php могу написать)

Добавлено через 4 минуты
CSS
1
2
3
<style>
div { display:none; }
</style>
PHP
1
2
3
4
5
6
7
8
9
10
<?php
$lol=rand(1,3);
switch($lol)
{
case 1: $lol = 'display:block;';break;
case 2: $lol2 = 'display:block;';break;
case 3: $lol3 = 'display:block;';break;
default: $lol = '';break;
}
?>
HTML5
1
2
3
<div style="<?=$lol;?>">1</div>
<div style="<?=$lol2;?>">2</div>
<div style="<?=$lol3;?>">3</div>
Добавлено через 10 минут
на js писать больше)
CSS
1
2
3
<style>
div { display:none; }
</style>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<script>
window.onload = function () {
var lol = Math.floor(Math.random() * 3) + 1;
var first=document.getElementById('first');
var second=document.getElementById('second');
var third=document.getElementById('third');
 
switch (lol)
  {
    case 1: first.style.display = 'block';break;
    case 2: second.style.display = 'block';break;
    case 3: third.style.display = 'block';break;
    default: first.style.display = 'block';break;
  }
}
</script>
HTML5
1
2
3
<div id="first">1</div>
<div id="second">2</div>
<div id="third">3</div>
З.Ы. это только один из вариантов, который первым в голову пришел)
1
 Аватар для Soldado
901 / 833 / 198
Регистрация: 28.06.2012
Сообщений: 1,607
Записей в блоге: 4
13.07.2012, 14:03
Есть много групп и по три блока в каждой группе. Необходимо чтобы каждый раз (после загрузки) в каждой группе был виден лишь один блок из трёх - случайный в группе и независимый от других групп.
Если правильно понял, то вот средствами jquery.
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
$('.groupblock').each(function(){
var numberBlock = sluchay();
$(this).children('div').eq(numberBlock).css('display','block');
});
 
 
function sluchay(){
var MyRND  = Math.random() * 2;
var MyRND = Math.round (MyRND);
return MyRND;
 
}
Стили:
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<style>
.block1, .block2, .block3{
display:none;
width:600px;
height:100px;
}
.block1{
background-color: #12ed49;
}
.block2{
background-color: #0a2df5;
}
.block3{
background-color: #ced22d;
}
 
</style>
И сколько угодно таких вот блоков (только добавляй, скрипт менять не нужно):
HTML5
1
2
3
4
5
<div class="groupblock">
   <div class="block1">11111111 БЛОК 1</div>
   <div class="block2">22222222 Блок 2</div>
   <div class="block3">33333333 Блок 3</div>
</div>
1
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 9
06.10.2016, 10:48
Народ, нужна помощь! Soldado дал отличный рабочий пример решения задачи. Но есть один нюанс. Этот скрипт затрагивает все вложенные div'ы. Т.е. не только те, которые должны меняться при перезагрузке, но и те, которые внутри них. Подскажите, как поправить так, чтобы скрипт менял только div'ы верхнего уровня, а вложенные в них игнорировал?
0
 Аватар для sad67man
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,834
06.10.2016, 16:41
ArtemiyHodorev, https://jsfiddle.net/6nfx36v2/1/
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<div class="groupblock">
   <div class="block">11111111 БЛОК 1</div>
   <div class="block">22222222 Блок 2</div>
   <div class="block">33333333 Блок 3</div>
</div>
<div class="groupblock">
   <div class="block">11111111 БЛОК 1</div>
   <div class="block">22222222 Блок 2</div>
   <div class="block">33333333 Блок 3</div>
</div>
<div class="groupblock">
   <div class="block">11111111 БЛОК 1</div>
   <div class="block">22222222 Блок 2</div>
   <div class="block">33333333 Блок 3</div>
</div>
JavaScript
1
2
3
4
5
$(".groupblock").each(function(){
  var $elements = $(this).find('>.block');
  var number = Math.floor(Math.random()*$elements.length);
  $elements.eq(number).show();
});
CSS
1
.block{display:none;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.10.2016, 16:41
Помогаю со студенческими работами здесь

Дублирует при обновлении страницы
При обновление страницы дублирует в базу сообщение &lt;?php include (&quot;config/conf.php&quot;);?&gt; &lt;?php $res =...

Переадресация при обновлении страницы
Добрый день. Есть две страницы. На одной происходит указание имени и e-mail. После нажатия на кнопку Submit - происходит перенаправление...

Автозаполнение при обновлении страницы
Добрый день! Я начинающий разработчик пишу свой блог на php, столкнулся с проблемой при вводе данных в форму. Когда данные ушли форма...

При обновлении блока содержимым полученным с сервера, блок дублируется внутри себя же.
$.ajax({ url: 'menu-call.php', success: function (data) { ...

как сделать чтобы при при обновлении страницы (header('location .');) попадать на ту же позицию
Например у меня есть длинный список записей, под каждой записью кнопка удалить, когда нажимаешь на нее, то происходит удаление записи и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru