Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.05.2021, 23:11
Интересующийся
Отправить личное сообщение для Angelinasen Посмотреть профиль Найти все сообщения от Angelinasen
 
Регистрация: 22.04.2021
Сообщений: 20

Добавить случайное свойство объекту
Есть 9 картинок на странице, им нужно применить css свойство clip-path случайным образом. Правильно ли я мыслю, что исправить?

let cropImage = [
    'polygon(0 0, 100% 0%, 97% 100%, 0% 100%)',
    'polygon(0 0, 100% 0%, 100% 100%, 0 94%)',
    'polygon(0 0, 100% 0%, 100% 94%, 0 100%)',
    'polygon(0 0, 94% 0, 100% 100%, 0 100%)',
    'polygon(0 0, 100% 3%, 100% 100%, 0 100%)',
    'polygon(1% 6%, 100% 0, 100% 100%, 0 100%)',
    'polygon(5% 0, 100% 0, 100% 100%, 0 100%)',
    'polygon(0 0, 100% 0, 100% 100%, 4% 100%)',
    'polygon(0 0, 94% 0, 100% 100%, 0 100%)',
];

let images = document.querySelectorAll('img');

document.addEventListener("DOMContentLoaded", function () {
  if (images.length > 0) {
    for (let index = 0; index < images.length; index++) {
      images[index].style.clipPath = Math.floor(Math.random() * cropImage.length);
    }
  }
});


UPD: Решила сама))

images[index].style.clipPath = cropImage[Math.floor(Math.random() * cropImage.length)];

Последний раз редактировалось Angelinasen, 18.05.2021 в 23:16.
Ответить с цитированием
  #2 (permalink)  
Старый 19.05.2021, 00:21
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Сообщение от Angelinasen
Правильно ли я мыслю, что исправить?
строку 13 перенести в строку 16, иначе строка 15 бесполезна и на всякий случай откройте для себя forEach
Ответить с цитированием
  #3 (permalink)  
Старый 19.05.2021, 00:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Angelinasen,
<!DOCTYPE html>
<html>
<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
        .mySlider__wrapper {
            display: flex;
            flex-wrap: wrap;
        }
    </style>
    <script>
        let cropImage = [
            'polygon(0 0, 100% 0%, 97% 100%, 0% 100%)',
            'polygon(0 0, 100% 0%, 100% 100%, 0 94%)',
            'polygon(0 0, 100% 0%, 100% 94%, 0 100%)',
            'polygon(0 0, 94% 0, 100% 100%, 0 100%)',
            'polygon(0 0, 100% 3%, 100% 100%, 0 100%)',
            'polygon(1% 6%, 100% 0, 100% 100%, 0 100%)',
            'polygon(5% 0, 100% 0, 100% 100%, 0 100%)',
            'polygon(0 0, 100% 0, 100% 100%, 4% 100%)',
            'polygon(0 0, 94% 0, 100% 100%, 0 100%)',
        ];
        document.addEventListener("DOMContentLoaded", function() {
            let images = document.querySelectorAll('img');
            images.forEach(({ style }) => style.clipPath = cropImage[Math.random() * cropImage.length | 0])
        });
    </script>
</head>
<body>
    <div class="mySlider__wrapper">
        <div class="mySlider__slide"><img src="https://picsum.photos/200/145?1"></div>
        <div class="mySlider__slide"><img src="https://picsum.photos/200/145?2"></div>
        <div class="mySlider__slide"><img src="https://picsum.photos/200/145?3"></div>
        <div class="mySlider__slide"><img src="https://picsum.photos/200/145?4"></div>
        <div class="mySlider__slide"><img src="https://picsum.photos/200/145?5"></div>
        <div class="mySlider__slide"><img src="https://picsum.photos/200/145?6"></div>
        <div class="mySlider__slide"><img src="https://picsum.photos/200/145?7"></div>
        <div class="mySlider__slide"><img src="https://picsum.photos/200/145?8"></div>
    </div>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 19.05.2021, 23:17
Интересующийся
Отправить личное сообщение для Angelinasen Посмотреть профиль Найти все сообщения от Angelinasen
 
Регистрация: 22.04.2021
Сообщений: 20

случайные свойства объекту
Спасибо! ForEach надо бы подучить
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавить сss свойство не удаляя текущее smart-create Events/DOM/Window 2 30.06.2017 23:02
добавить элемент в массив, принадлежащий объекту gorda Элементы интерфейса 2 08.11.2015 21:27
Как добавить методы объекту после конструирования. DragorWW Общие вопросы Javascript 23 21.01.2013 20:39
как добавить свойство объекта в объект в объекте ? %) mitiya Общие вопросы Javascript 1 07.10.2012 14:46
Как понять, какому объекту принадлежит свойство? Елена-Котяра Events/DOM/Window 1 16.02.2012 02:19