Переключатель CSS

Для смены "дизайна" сайта.

 
Sometime CMS Community
Посетитель
no avatar
Медаль
Сообщений: 146
Скачал в интернете пару скриптов-"переключалок" css. Сделал все как в примерах, т.е. создал дополнительные стили, прописал к ним пути, подключил скрипт и т.д., но стили не переключаются.

Вопрос, кто нибудь делал на instantCMS такое ранее? Если да, то поделитесь ссылкой на скрипт пожалуйста, т.к. я уже три штуки перепробовал - стили не меняются.

Мне просто надо, чтобы пользователь мог выбрать одни из, например, 5 оформлений шапки и бекграунда сайта (5 файлов *сss).
Или попробуйте у себя на сайте скрипт, который в "аттачах" этого поста. Если у вас он работает, значит я что-то не так делаю.
Прикрепленные файлы:
AlternateStyleSheets_1d1e3.zip | 16.78 Кб | Скачали: 449
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
Если у вас он работает, значит я что-то не так делаю.

у меня работает нормально. А как ты его подключал?
Реклама
cms
Sometime CMS Community
Посетитель
no avatar
Медаль
Сообщений: 146
Александр:

Если у вас он работает, значит я что-то не так делаю.

у меня работает нормально. А как ты его подключал?

Удивительно, что и у вас точно этот же скрипт стоит.

1. Загрузил *js и желаемые *css на хостинг.

2. В template.php в <head></head> прописал пути к *css:

Код PHP:
  1.  
  2. <link rel= "alternate stylesheet" type="text/css" href="путь/original.css" title="original" />
  3. <link rel="alternate stylesheet" type="text/css" href="путь/1.css" title="alternate 1" />
  4. <link rel="alternate stylesheet" type="text/css" href="путь/2.css" title="alternate 2" />
  5.  
и путь к *js:

Код PHP:
  1.  
  2.  
  3. <script type="text/javascript" src="путь/styleswitcher.js"></script>
  4.  
  5.  
3. В необходимом месте шаблона поставил ссылки для переключения, как в примере:

Код PHP:
  1.  
  2. <a href="#" onclick="setActiveStyleSheet('original'); return false;">Стиль 1</a>
  3. <a href="#" onclick="setActiveStyleSheet('alternate 1'); return false;">Стиль 2</a>
  4. <a href="#" onclick="setActiveStyleSheet('alternate 2'); return false;">Стиль 3</a>
  5.  
После чего залил template.php на хостинг. Ссылки есть, но при нажатии на них ничего не происходит.

Хотелось бы добавить, что в папке на ПК "пример-скрипт" работает (открываю index.php, щелкаю по картинкам дизайн меняется), но на хостинге - нет :)
Редактировалось: 2 раз (Последний: 20 октября 2010 в 23:06)
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
Удивительно, что и у вас точно этот же скрипт стоит.

Во первых можно на Ты.
Во вторых у меня не стоит этот скрипт. Я на локалке проверял. По твоей просьбе. Это ничего не меняет. Все должно работать.

Смотри как я делаю:
В папку templates\_default_\css закинули файлы
stylealt1.css
stylealt2.css
styleswitcher.js


В template.php прописал

Код PHP:
  1. <link rel="alternate stylesheet" type="text/css" href="/templates/_default_/css/stylealt1.css" title="alternate 1" />
  2. <link rel="alternate stylesheet" type="text/css" href="/templates/_default_/css/stylealt2.css" title="alternate 2" />
  3. <script type="text/javascript" src="/templates/_default_/css/styleswitcher.js"></script>

И тут же, только ниже написал
Код PHP:
  1. <a href="#" onclick="setActiveStyleSheet('alternate 1'); return false;"><img src="altstyle1.jpg" alt="alternate style 1" /></a>
  2. <a href="#" onclick="setActiveStyleSheet('alternate 2'); return false;"><img src="altstyle2.jpg" alt="alternate style 2" /></a>
В се работает. Даже с теми стилями что прилагаются.
Возможно просто пути к файлам неправильные.

Да и обрати внимание чтоб js и css файла лежали в одной папке.
Sometime CMS Community
Посетитель
no avatar
Медаль
Сообщений: 146
Александр:
Смотри как я делаю

Сделал все так же, за исключением того, что css и js поместил не в _default папку, а в папку своей темы. Клацая по изображениям, ничего не происходит. Наверное это гиблое дело :)

Да и в Opere в консоли ошибок:

Код PHP:
  1.  
  2. Inline script compilation
  3. Syntax error at line 1 while loading:
  4. eStyleSheet(title);}window.onunload = fu
  5. --------------------^
  6. expected ';', got 'window'
  7.  

Код PHP:
  1. Uncaught exception: ReferenceError: Undefined variable: setActiveStyleSheet
  2. Error thrown at unknown location in <anonymous function>(event):
  3. /* no source available */
  4.  
Это какие-то проблемы со скриптом видать :)
Редактировалось: 3 раз (Последний: 21 октября 2010 в 01:08)
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
Ссылку дай на сайт. Посмотрю.
Sometime CMS Community
Посетитель
no avatar
Медаль
Сообщений: 146
Александр:

Ссылку дай на сайт. Посмотрю.

Спасибо Вам, Александр, за поддержку, но я понял, что это гиблое дело, и переключение css на сайте не будет. Удалил строчки из template.php и js из папки. Перед удалением сделал копию кода.

Код PHP:
  1.  
  2. <head>
  3. ....
  4. .....................
  5. ................................
  6. ...........................................
  7. <link href="/templates/mysocial/css/cssf-base.css" rel="stylesheet" type="text/css" />
  8. <link type='text/css' href='/templates/mysocial/basic/css/basic.css' rel='stylesheet' media='screen' />
  9. <!--[if lt IE 7]>
  10. <link type='text/css' href='/templates/mysocial/basic/css/basic_ie.css' rel='stylesheet' media='screen' />
  11. <![endif]-->
  12. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
  13. <script src='/templates/mysocial/basic/js/jquery.simplemodal.js' type='text/javascript'></script>
  14. <script src='/templates/mysocial/basic/js/basic.js' type='text/javascript'></script>
  15. <script type="text/javascript" src="/templates/mysocial/jquery.iepnghack.1.6.js"></script>
  16. <script type="text/javascript">$(function(){ $("#logoimg").pngfix(); })</script>
  17.  
  18. <link rel="alternate stylesheet" type="text/css" href="/templates/mysocial/css/stylealt1.css" title="alternate 1" />
  19. <link rel="alternate stylesheet" type="text/css" href="/templates/mysocial/css/stylealt2.css" title="alternate 2" />
  20. <script src='/templates/mysocial/css/styleswitcher.js' type='text/javascript'> </script>
  21.  
  22. </head>
  23.  
  24. <body>
  25. <div id="page">
  26. <div class="page-layout">
  27. <div class="container">
  28. <div class="layout-box lb-4">
  29.  
  30. <a href="#" onclick="setActiveStyleSheet('alternate 1'); return false;"><img src="/templates/mysocial/css/altstyle1.png" alt="alternate style 2" /></a>
  31. <a href="#" onclick="setActiveStyleSheet('alternate 2'); return false;"><img src="/templates/mysocial/css/altstyle2.png" alt="alternate style 2" /></a>
  32. </div><!-- layout-box -->
  33.  
В строчках 17 - 20 и 29 - 30, по-моему, все корректно я отобразил. Но в посте выше я писал, что даже браузер плюется.
Одним словомЖ - Не дано :)
Еще раз спасибо Вам за помощь!
Редактировалось: 2 раз (Последний: 21 октября 2010 в 19:50)
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
Да. Не надо - так не надо... Рано ты сдался...
Sometime CMS Community
Посетитель
no avatar
Медаль
Сообщений: 146
Александр:

Да. Не надо - так не надо... Рано ты сдался...

Александр, не "не надо", а "не дано" мне прикрутить на сайт переключатель сss :)
Посетитель
small user social cms
Медаль
Сообщений: 434
попробовал прикрутиь эту фишку к 2ке в принципе работает, НО.
выбираю альтернативный стиль, все как положено переключается, а вот если потом обновлю страницу то сначала включается оригинальный стиль, а потом через секунду-две всё переключается на альтернативный.
Как поправить чтоб не было этих "засветов"
ковыряю на денвере.
http://aksucity.net
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.