【问题标题】:Positioning images in random places将图像放置在随机位置
【发布时间】:2013-06-28 05:54:09
【问题描述】:

我想将随机图像放置在屏幕的随机位置。我试过这个:

$(document).ready(showLetter);
var imgsArray = ["A1", "C1", "F1", "J1", "K1", "L1", "S1", "Ñ1"];

function generateRandomForArray() {
    var num = Math.floor(Math.random() * 8);
    return num;
}

function generateRandom() {
    var num = Math.floor(Math.random() * 400);
    return num;
}

function showLetter() {
    var letter = imgsArray[generateRandomForArray()];
    $("div").append("<img src='imgs/" + letter + ".png'>");
    var left = generateRandom();
    var top = generateRandom();
    $("div").last().css({"top": top + "px", "left": left + "px"});
}

图像出现在屏幕的左上角。再一次:我想将它们放置在屏幕的随机位置。我对 CSS 了解不多。有任何想法吗?提前致谢!

【问题讨论】:

    标签: javascript jquery css image


    【解决方案1】:

    对我来说听起来像是定位问题。像这样试试,即我加了position:absolute

    function showLetter() {
        var letter = imgsArray[generateRandomForArray()];
        $("div").append("<img src='GameHTML5/images/" + letter + ".png'>");
        var left = generateRandom();
        var top = generateRandom();
        $("div").last().css({"position":"absolute","top": top + "px", "left": left + "px"});
    }
    

    【讨论】:

    • 是的! :D 这行得通。我在 CSS 中有这样的课程img { position:absolute; } 我认为它会应用于所有图像......?反正。非常感谢!! :)
    【解决方案2】:
    function generateRandomForArray(min, max) {
      var num = Math.random() * (max - min) + min;
      return Math.floor(num);
    }
    
    //generateRandomForArray(0, 8);
    //3
    //generateRandomForArray(0, 8);
    //0
    //generateRandomForArray(0, 8);
    //2
    //generateRandomForArray(0, 8);
    //4
    //generateRandomForArray(0, 8);
    //5
    //generateRandomForArray(0, 8);
    //7
    //generateRandomForArray(0, 8);
    //4
    

    【讨论】:

    • 嗨@泰米尔语!感谢您的宝贵时间,但我认为您不理解我的问题:P
    • @user2484181:接受:P。但我会为将来可能来的人保留我的答案。
    猜你喜欢
    • 2022-01-05
    • 1970-01-01
    • 1970-01-01
    • 2015-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多