Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Присвоение ширины и высоты переменной (https://javascript.ru/forum/jquery/73428-prisvoenie-shiriny-i-vysoty-peremennojj.html)

Retro_1477 15.04.2018 11:10

Присвоение ширины и высоты переменной
 
Нужно присвоить значение width и height класса .pond переменным. После чего появление картинок будет происходить только в этой области
Вот наработка, но почему-то он не принимает значения pondWidth и pondHeight
$('.hide-all').click(function spawnStarting() {
    var DUCK1_COUNT = $(".count1").html();
//параметры пруда
    var $pond, pondWidth, pondHeight;
    $pond = $('.pond');
     pondWidth = $pond.width();
     pondHeight = $pond.height();

//Добавление пруда
    $("body").append("<div class='pond'>");
//Спаун уток
    for (var i = 0; i < DUCK1_COUNT; i++) {
        var DUCK = $("<img src='img/004-duck.png' class='utka plav'>").appendTo(".pond")
        .addClass('Krykvi1'+i);
        var transform = 'translate(' + getRandom(pondWidth)+ 'px, ' +  getRandom(pondHeight)  + 'px)'
         if (getRandomIn(3, 6) < 5) {
           transform += " scaleX(-1)"
        }
        DUCK.css('transform', transform);
  }

function getRandom(upper) {
  return Math.random() * upper;
}

рони 15.04.2018 11:17

Retro_1477,
сначала нужно пруд выкопать, потом измерить, а не наоборот.

Retro_1477 15.04.2018 14:28

Я понял твою аллегорию)) Сам класс и размеры пруда я уже написал, но всё равно не считает. То есть я задал высоту и ширину в процентном соотношение вот...
Код:

.pond {
  position: absolute;
  width: 50%;
  height: 50%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0);
}


laimas 15.04.2018 14:54

$pond = $('.pond'); - это пока не пруд, а проект, и не объект.

$pond = $("<div class='pond'/>").appendTo('body'); - а это вырыли
и он получил размеры по проекту
pondWidth = $pond.width();
pondHeight = $pond.height();

Retro_1477 15.04.2018 16:10

Теперь понятно как рыть пруды))
Спасибо, ребят!


Часовой пояс GMT +3, время: 08:46.