Выбор рандомом таблицу css
function getrandom() {
var min_random = 1; var max_random = 5; max_random++; var range = max_random - min_random; var n=Math.floor(Math.random()*range) + min_random; var a="art"+n+".css"; return a; } Как ее теперь привязать? Пишу: <LINK rel="stylesheet" href="javascript:getrandom()" type=text/css media="all"> Не срабатывает. Пробовал и онлоад в body пихать через document.styleSheets.href, все равно ноль эффекта. |
Либо через document.write(), либо через коллекцию стилей.
|
либо:
var link = document.craeteElement('link'); link.href = '.........'; link.type = 'text/css'; document.getelementsByTagName('head')[0].appendChild(link); |
var link = document.craeteElement('link');
link.href = '.........'; link.type = 'text/css'; document.getelementsByTagName('head')[0].appendChild(link); link.href='....' - это ссылка на стиль, как я понял? document.getelementsByTagName('head')[0].appendChild(link); - а почему тогда тут через хэд? |
http://htmlbook.ru/html/link.html :
"В отличие от тега <A>, тег <LINK> размещается всегда внутри контейнера <HEAD>..." И ещё у меня там ошибка: getElementsByTagName я думаю ты уже и сам заметил... |
Спасибо, ошибки заметил, конечно, но в ие не работает почему-то, а мне как раз больше всего он нужен. Пошел обходным:
var art1 = ({...}); var art2 = ({...}); var art3 = ({...}); var art=getrandom(); styleElement.type = "text/css"; if (styleElement.styleSheet) { styleElement.styleSheet.cssText =art; } else { styleElement.appendChild(document.createTextNode(art)); } document.getElementsByTagName("head")[0].appendChild(styleElement); Переменная присваивается нормально, но почему-то вместо csstext пусто. А если присваивать напрямую, например art1, то все отлично срабатывает. Есть идеи? |
Ну? Может кто поможет?
|
у меня мой вариант работает и в ИЕ и везде...
|
Понятно, все равно тебе спасибо за идею. Уже все реализовал через свой вариант. Завел еще одну переменную и сравнивал просто.
|
Часовой пояс GMT +3, время: 08:35. |