применить несколько стилей
Здравствуйте, у меня на сайте есть textarea , в котором пишется css код .
при нажатии кнопки, нужно чтобы этот css код прмиенялся к странице в другом фрейме. Как это правильно сделать? пытался добавлять текстовое содержимое в тег style фрейма - не работает. знаю что на jquery есть функция css, но для неё нужно будет вручную распарсить весь текст. и применить построчно - что сложно и неудобно. |
style тег? тег. тут помоему очевидно что имеется ввиду добавление в код фрейма.
Мне кажется, что такие вещи как применение стилей происходит во время построения страницы, и если их добавить после в тег стайл - работать не будет. код parent.frames[1].getElement('style'). - знаю что не правильно, но мысль развивать не стал по причине описанной выше. |
На самом деле все можно сделать :) как раз сам проверял свой код можно делать так:
<html> <head> <meta charset="utf-8"> </head><frameset rows='50%,50%'> <frame src='новый_файл.html' > <frame src='новый_файл2.html'> </frameset></html> это самый первый html он содержит ссылки на фреймы :) : <html><head><meta charset="utf-8"><title></title> <script> document.write('Yes'); function csstextv(){ style = parent.frames[1].document.getElementById('s1'); csstext=document.form.tex.value; csstext=document.createTextNode(document.form.tex.value); if(csstext!=''){ style.appendChild(csstext) } } </script><form name='form'> <textarea rows='4' cols='10' name='tex'></textarea><button onclick='csstextv()'>Сделать CSS</button></form> </body></html> это второй содержит скрипт влияющий на смежный фрейм точнее его тег style с атрибутом id равным 's1' <html><head><style id='s1'></style><meta charset="utf-8"><title></title><body> боди </body></html> ну и третий в нём как раз этот тег style с атрибутом id равным 's1' :) я могу предложить такой принцип действия (не забудьте что эти фреймы оба должны принадлежать окну верхнего уровня или одному и тому же фрейму, если они вложенные вот и всё :) ) |
чтобы добавить css текстом, надо делать это не через textNode, а через свойство тега <style> - innerHTML
(или через добавление правил по одному) |
Впрочем если вы имеете всмысле что-бы код не вставлялся отрывками изменялся полностью тогда да надо использовать свойство innerhtml :)
|
Цитата:
Цитата:
|
Всем спасибо за помощь, код Dim@ помог, разобрался.
|
Часовой пояс GMT +3, время: 09:18. |