2012-01-11 6 views
6

Tôi đã thử một số hướng dẫn trên web và dường như không có cách nào hoạt động đúng. Những gì tôi đang cố gắng làm là khá đơn giản Tôi nghĩ:Hình nền cơ thể ngẫu nhiên

Tôi có 9 hình ảnh .jpg khác nhau mà tôi cần hiển thị ngẫu nhiên khi tải trang - làm nền. Điều này nên được khá đơn giản phải không?

Cảm ơn,

EDIT (Xin lỗi, quên đính kèm mã - tìm thấy trong các trang web):

$(document).ready(function(){ 

    bgImageTotal=9; 

    randomNumber = Math.round(Math.random()*(bgImageTotal-1))+1; 

    imgPath=('../img/bg/'+randomNumber+'.jpg'); 

    $('body').css('background-image', ('url("'+imgPath+'")')); 

}); 
+2

Thường được ưu tiên nếu bạn đăng một số mã mà bạn đã cố sử dụng sẽ không hoạt động thay vì chỉ yêu cầu mọi người viết nó cho bạn. –

+0

Đúng, xin lỗi .. quên đính kèm mã. – asirgado

+0

Vâng, tất cả đều phụ thuộc vào ngôn ngữ bạn đang sử dụng như cách bạn làm. – Paul

Trả lời

22

Kiểm tra hướng dẫn này: http://briancray.com/2009/12/28/simple-image-randomizer-jquery/

Đầu tiên tạo ra một loạt các hình ảnh:

var images = ['image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg', 'image5.jpg']; 

Sau đó, đặt hình ảnh ngẫu nhiên làm hình nền:

$('body').css({'background-image': 'url(images/' + images[Math.floor(Math.random() *  images.length)] + ')'}); 

Điều đó sẽ không thành vấn đề.

+0

Tôi nên gọi hàm của mình là gì? Tôi không quen với javascript, cảm ơn. – asirgado

+0

bạn không cần phải gọi hàm, chỉ cần đặt nó bên trong của jQuery $ (tài liệu) .ready (function() {} tag. –

+0

Có nó hoạt động! Tôi đã có một vấn đề với các liên kết kịch bản để jQuery. 't liên kết các thư viện ở vị trí đầu tiên. Cảm ơn bạn – asirgado

0

sử dụng jQuery: $("body").css("background-image", "url(" + Math.floor(Math.random()*9) + ".jpg)");

này là giả định, rằng hình ảnh của bạn được đặt tên 0.jpg cho đến khi 8.jpg và nằm trong cùng thư mục với trang của bạn.