Меняющееся бекграунд после обновления страницы?

mkden
Сообщения: 96
Зарегистрирован: 08 май 2010
Вот код :

Код: Выделить всё

<head>
<SCRIPT language="javascript">
<!-- Random Background

function RandomBackground(images,btags)
{
/* si: start index
** i: current index
** ei: end index
** cc: current count
*/
 si = 0;
 ci=0;
 cc=0;
 imageSet = new Array();
 ei = images.length;
  for (i=1;i<ei;i++) {
    if (images.charAt(i) == ' ' || images.charAt(i) == ',') {
      imageSet[cc] = images.substring(si,i);
      cc++;
      si=i+1;
      }
    }
  ind = Math.floor(Math.random() *cc);
  document.writeln("<body "+btags+" background=\""+imageSet[ind]+"\">");
}

//function RandomBackground(images)
//{
  //RandomBackground(images,"");
//}

// End Script -->
</SCRIPT>
</head>
<body>
<SCRIPT>
RandomBackground("bg-1.jpg bg-2.jpg ");
</SCRIPT>


Вопрос такой где в скрипте исправить значение,чтобы картинка не повтарялась,тоисть (no-repeat top)?
p.s: В php я нуб!!! )

Аватара пользователя
AgentSIB
Администратор
Сообщения: 329
Зарегистрирован: 17 май 2010

Код: Выделить всё

document.writeln("<body "+btags+" background=\""+imageSet[ind]+"\">");

На

Код: Выделить всё

document.writeln("<body "+btags+" style=\"background: url("+imageSet[ind]+") no-repeat top;\">");
Frustra fit per plura quod potest fieri per pauciora © Закон "Бритвы Оккама"

mkden
Сообщения: 96
Зарегистрирован: 08 май 2010
спс теперь все ок!

-- добавлено 15 авг 2010, 09:00 --

А кто знает скрипт по проще,а то этот не всегда срабатывает?
p.s: В php я нуб!!! )

Аватара пользователя
Distructor
Администратор
Сообщения: 1631
Зарегистрирован: 28 дек 2009
mkden писал(а):А кто знает скрипт по проще,а то этот не всегда срабатывает?
проще и правильнее выбирать картинку и прописывать "<body style="background: ... " на уровне php

mkden
Сообщения: 96
Зарегистрирован: 08 май 2010
Ну это совсем проще!))А как же красивей и оригинальней?
p.s: В php я нуб!!! )

Аватара пользователя
Distructor
Администратор
Сообщения: 1631
Зарегистрирован: 28 дек 2009
mkden писал(а):Ну это совсем проще!))А как же красивей и оригинальней?
чтот не пойму в чем заключается красота и оригинальность при задании фона через js сомнительными средствами после отрисовки страницы? я бы понял еще если бы фон менялся через js несколько раз при просмотре страницы. Но если необходимо только единажды поставить его, то намного правильнее сделать это на стороне сервера.

mkden
Сообщения: 96
Зарегистрирован: 08 май 2010
Если менять фон много раз при просмотре страницы то страница будет грузиться в 5 раз дольше если поставить пять фоновых изображений!)
Это будет чуть напригать пользователей!)

-- добавлено 15 авг 2010, 15:59 --

Все сделал проще,теперь все супер!

Код: Выделить всё

<?php

// Путь до папки с картинкой
$Path = '/backgrounds/';
// Количество фонов
$Count = 2;
// Номер случайного фона
$CurrentBackground = mt_rand(1, $Count);

// Выводим в стилях
echo("<style>
body {
    background: url(" . $Path . $CurrentBackground . ".jpg);
    background-position: right top;
    background-repeat: no-repeat;
    background-color: #000;
}
</style>");

?>
p.s: В php я нуб!!! )

Аватара пользователя
AgentSIB
Администратор
Сообщения: 329
Зарегистрирован: 17 май 2010
Имхо, на уровне пхп не вариант.
Frustra fit per plura quod potest fieri per pauciora © Закон "Бритвы Оккама"

Аватара пользователя
Distructor
Администратор
Сообщения: 1631
Зарегистрирован: 28 дек 2009
AgentSIB писал(а):Имхо, на уровне пхп не вариант.
отчего же? если все что необходимо сделать - это выбрать при открытии страницы одну из нескольких картинок и поставить ее фоном страницы.

да и использовать надо не "document.writeln("<body", а найти элемент по иду и потом менять его стиль


Вернуться в «Вопросы по веб-дизайну и верстке»