PHP jquery随机更改每个季节的div背景

时间:2014-10-16 07:25:53

标签: php jquery html css

我在文件夹(1,2,3,4)中每个季节(春夏......)有10个背景。现在我需要随机改变每个赛季的div背景。我的意思是春季变化文件夹1的随机图像。

如何使用PHP或混合jquery / css更改背景?!

4 个答案:

答案 0 :(得分:2)

如果您想在每个页面上重新加载随机图像,请在PHP模板文件中包含以下代码段。

$season = 'spring';
function random_pic($season)
{
    $dir = 'backgrounds/' . $season;
    $files = glob($dir . '/*.*');
    $file = array_rand($files);
    return $files[$file];
}

要动态获取$season值,您可以参考Jerodev' answer来执行此操作并同时包含该功能。

答案 1 :(得分:0)

你必须编写自己的代码来检测php中的季节。现有季节没有现有的功能。问题是北半球和南半球的情况不同。

This页面有一个关于如何获得当前赛季的非常好的例子。完成后,您可以使用switch语句选择应选择背景的文件夹。

接下来,您可以使用scandir()查找此文件夹中的所有文件,并使用rand()选择其中一个文件。

最后一部分是将图像放入html中。最简单的方法是使用内联css,但你也可以将路径传递给jQuery脚本并让它处理背景。

答案 2 :(得分:0)

你需要当天跟踪它是否在哪个季节,所以基于此,按照季节从服务器获取文件以应用主题。你将以php / cakephp更好的方式做到。

答案 3 :(得分:0)

我会这样做。获取季节,每个文件夹中都有预定数量的图像,并按以下方式命名:1.jpg,2.jpg,3.jpg:

//Get Season
$month = DATE("m");
$season = "winter";

if ($month >= "03" && $month <= "05")
  $season = "spring";
elseif($month >="06" && $month <="08")
  $season = "summer";
elseif ($month >= "09" && $month <= "11")
  $season = "autumn";

//Generate a random number between 1 and 10 (change to match your range of backgrounds)
$random_number = rand (1, 10);

$image_path = "backgrounds/" . $season . "/" . $random_number . ".jpg";

// Print into tag, CSS code, etc
echo "Image path: " . $image_path;