Как вызвать в php нужный css, если нет JS?
#1
Опубликовано 20 March 2009 - 13:11
В моем index.php c помощью ява-скрипт, в зависимости от разрешения монитора пользователя, подгружается нужный css.
Код прописан в <header> и выглядит так:
[codebox]<script language="javascript">
var height=0;
var width=0;
if (self.screen) { // для Netscape и IE версий 4 и выше
width = screen.width
height = screen.height
}
else if (self.java) { // для Netscape3
var jkit = java.awt.Toolkit.getDefaultToolkit();
var scrsize = jkit.getScreenSize();
width = scrsize.width;
height = scrsize.height;
}
if (width > 1024) {
document.writeln('<link rel=\"stylesheet\" href=\"сайт/css/default_css.css\" type=\"text/css\"/>')
}
else if (width = 1024)
{ document.writeln('<link rel=\"stylesheet\" href=\"сайт/css/1024_css.css\" type=\"text/css\"/>');
}
else { document.writeln('<link rel=\"stylesheet\" href=\"сайт/css/800_css.css\" type=\"text/css\"/>');
}
</script>[/codebox]
Все нормально работает, но ровно до того момента, пока не зайдет пользователь, у которого не установлен (выключен) JavaScript. Тогда, естественно, не загрузится ни одного CSS, что печально.
Вот вопрос, как бы средствами php сделать такое условие, чтобы при отсутствии JS загружался дефолтный css, а если JS работает, то загружался тот CSS, который предлагает JavaScript?
#2
Опубликовано 20 March 2009 - 15:17
#4
Опубликовано 20 March 2009 - 16:13
Да это-то ясно.. хреново, блин, придется забить на юзеров без явыНикак. PHP скрипты выполняются на сервере, а не у клиента.
Тоже вариант. Но это уж слишком некрасиво.Можно предложить пользователю самому ввести параметры )))
#5
Опубликовано 20 March 2009 - 17:00
Если такой возможности нет, то
<noscript> <link rel="stylesheet" href="no_script.css" type="text/css" /> </noscript> <script type="text/javascript"> document.writeln('<link rel=\"stylesheet\" href=\"script.css\" type=\"text/css\"/>'); </script>
#6
Опубликовано 20 March 2009 - 17:16
Veline, спасибо большое! работает!проверим щас..
#7
Опубликовано 20 March 2009 - 18:30
#8
Опубликовано 20 March 2009 - 18:37
Нашел ещё один вариант. Таки php умеет: http://ru.php.net/ma...get-browser.php.
[javascript] => 1.
Прочитай первую строчку моего предыдущего поста
#9
Опубликовано 20 March 2009 - 21:53
Прочитай первую строчку моего предыдущего поста
Нашел ещё один вариант. Таки php умеет: http://ru.php.net/ma...get-browser.php.
[javascript] => 1.
#10
Опубликовано 20 March 2009 - 22:01
#11
Опубликовано 20 March 2009 - 22:43
http://ru.php.net/ma...attern=browscapну ты почитай повнимательнее что нашел-то и как оно работает )
Отвечай на мой ответ!11
#12
Опубликовано 20 March 2009 - 22:55
http://ru.php.net/ma...attern=browscap
Отвечай на мой ответ!11
http://ru.php.net/ma...get-browser.php
Note: In order for this to work, your browscap configuration setting in php.ini must point to the correct location of the browscap.ini file on your system.
browscap.ini is not bundled with PHP, but you may find an up-to-date » php_browscap.ini file here.
While browscap.ini contains information on many browsers, it relies on user updates to keep the database current. The format of the file is fairly self-explanatory.
#13
Опубликовано 20 March 2009 - 23:05
Посетителей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных пользователей