2016-02-18 3 views
1

У меня есть генератор случайных чисел, который генерирует числа от 5 до 15. Я хочу иметь возможность изменить положение сундука div в зависимости от того, какой номер выбирает компьютер. (все установлено до 300, потому что оно проверяется.) Я не знаю, почему он не работает. (помните, что div определенно называется сундук, и у меня есть оператор css, который включает в себя «левый». Кроме того, функция определенно вызывается и генерирует число.) Любая помощь принимается,javascript, если оператор не работает

Вот мой код:

var xChestPosition; 
var yChestPosition; 
function randomNumberForChest(firstNum, secondNum) { 
    xChestPosition = Math.floor(Math.random() * secondNum) + firstNum; 
    yChestPosition = Math.floor(Math.random() * secondNum) + firstNum; 
    alert(xChestPosition); 
    if(xChestPosition==5) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==6) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==7) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==8) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==9) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==10) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==11) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==12) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==13) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==14) { 
     $('#chest').css('left','300'); 
    } 
    if(xChestPosition==15) { 
     $('#chest').css('left','300'); 
    } 
} 
+3

'left' работу только на' absolute', '' relative' и fixed' расположенных элементов. – Tushar

+3

, кстати, оператор switch case был бы лучше :) – Arda

+0

@igetstuckalot, кстати, о чем (xChestPosition> = 5 && xChestPosition <= 15) {$ ('# chest'). Css ('left', '300px'); –

ответ

1

Вполне вероятно, что вы, возможно, потребуется указать единицу измерения положения CSS

$('#chess').css('left', '300px') 
0

вы бы лучше использовать:

$('#chest').css({"position": "absolute", "left": "300px"}); 

вместо использования:

$('#chest').css('left','300'); 

Потому что, если вы хотите установить левый атрибуты, вы должны определить свою позицию (абсолютный, фиксированный, относительное). Ваш оператор «if» может быть выполнен правильно.

0

Попробуйте

var xChestPosition; 
    var yChestPosition; 
    function randomNumberForChest(firstNum, secondNum) { 
     xChestPosition = Math.floor(Math.random() * secondNum) + firstNum; 
     yChestPosition = Math.floor(Math.random() * secondNum) + firstNum; 
     alert(xChestPosition); 
     if (xChestPosition == 5) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 6) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 7) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 8) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 9) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 10) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 11) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 12) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 13) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 14) { 
      $('#chest').css('left', '300px'); 
     } 
     if (xChestPosition == 15) { 
      $('#chest').css('left', '300px'); 
     } 
    } 
Смежные вопросы