Я использую skrollr и хочу, чтобы весь объект моей страницы менял цвета/градиенты. Я могу сделать это с моим текущим кодом, который:Изменение атрибута данных тела с помощью jQuery
<body data-start="background-image:linear-gradient(rgb(4,21,41), rgb(31,16,66));" data-end="background-image:linear-gradient(rgb(31,16,66), rgb(66,16,52));">
Однако при загрузке в плавающем фрейме (который запускается подчиненной формы), я хочу изменить градиент для тела. Я думал, что изменение data-start
значения может сделать трюк, так что я пробовал:
<iframe onload="if(submitted)
{$('body').attr('data-start','background-image:linear-gradient(rgb(4,21,41), rgb(31,16,66))'}">
Но это не сработало. Я пробовал другие функции jQuery, которые работают, когда загружается iFrame (например, $('#idName').hide()
). Но функция .attr(), похоже, не работает, и я думаю, что что-то с помощью skrollr мешает. Я также пробовал функцию .data(), но это тоже не изменяет значения данных.
Кто-нибудь знает, как изменить градиент тела после определенного триггера (например, отправить форму)?
Это менее вопрос со значением не обновляется, и еще тот факт, что обновление это не делает ничего. Там будет скрипт, который что-то делает с этим атрибутом начала передачи данных в теге body при загрузке страницы, но он не будет продолжать проверять, обновляется ли значение; узнать, что это за сценарий, какую функцию нужно вызывать, и называть его после обновления значения. –
Почему бы не изменить градиент непосредственно на стиль тела без изменения атрибутов данных? –
Я не работал с skrollr, но вам, вероятно, понадобится повторная инициализация skrollr, если это будет поддерживаться. –