Мы используем файлы cookie, чтобы упростить навигацию на этом сайте. Если вы даете свое согласие на использование файлов cookie и обработку ваших персональных данных, нажмите «Принимаю».

Подключение цветов pantone в проект

Домой Форумы Общие вопросы Подключение цветов pantone в проект

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Автор
    Сообщения
  • #15380
    bohdan
    Участник

    Здравствуйте!
    Подскажите, пожалуйста, как можно решить задачу: есть огромный список в html из блоков div(цвета pantone). Для каждого div задан свой цвет через style:background(r,g,b). (В списке более 1тис цветов, тоесть надо обращаться к блоку по общему классу). Нужно организовать изменение цвета объекта.
    Получается, что нам нужно, чтобы по нажатию на блок, мы получали значения r, g, b в пазлах.
    Я знаю, как получить значения r,g,b в самом js только в событии onclick. А в пазлах, можно подключать только функцию. Пытался сделать функцию так, чтобы в ней прописывалось событие onclick, и она возвращала значение, но так похоже нельзя.
    Может есть способ получать по клику соответствующий цвет, используя только пазлы? Или можно как-то встроить свое событие onclick, чтоб в пазлах были видны значения r,g,b?
    Буду очень благодарен, если кто-то подтолкнет к решению проблемы!

    #15384

    Здравствуйте,

    Если у вас уже есть свой обработчик onclick в js, то, наверное, проще всего будет в нем вызвать функцию из пазлов и передать туда значения rgb.

    Для этого можно создать, например, такую функцию:
    puzzles_function.png

    И потом просто вызываете её по имени из js в обработчике onclick:
    v3d.puzzles.procedures.setColor(r,g,b);

    Вложения:
    Вы должны войти для просмотра вложений.

    Co-founder and lead developer at Soft8Soft.

    #15393
    bohdan
    Участник

    Понял, спасибо большое. Только вот ещё проблемка, не знаю, как взять элемент, например по ID, в исходном js(не видит элементы из index.html). До этого прописывал код в своем js файле, который подключен к index.html, поэтому все работало.

    Вложения:
    Вы должны войти для просмотра вложений.
    #15398

    Возможно, у вас сцена подгружается в iframe, а интерфейс находится в родительском документе. Попробуйте document.getElementById заменить на parent.document.getElementById.

    Co-founder and lead developer at Soft8Soft.

    #15400
    bohdan
    Участник

    Вроде бы все так как вы описали, но все-равно не работает. Сцена прогружается в iframe, а iframe подключается в конце index.html

    Вложения:
    Вы должны войти для просмотра вложений.
    #15406

    Сложно сказать, в чем проблема. Если вдруг у вас меню динамически создается в какой-то момент после загрузки страницы, и runCode() вызывается до того, как это произойдет, то эти элементы ещё не будут существовать.

    Если говорите, что раньше в своем js работало, то можно вернуть как было и в том месте вызвать функцию из пазлов, как-нибудь так:

    var iframeElement = document.getElementById('frame-first');
    iframeElement.contentWindow.v3d.puzzles.procedures.setColor(r,g,b);
    

    Co-founder and lead developer at Soft8Soft.

    #15408
    bohdan
    Участник

    Блин,что-то я сильно протупил. Оказывается, я забыл прописать id для элемента в html) Теперь все работает и в runCode, и в моем js. Спасибо большое!!)

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Для ответа в этой теме необходимо авторизоваться.