JS на конкретный Url
Здравствуйте, уважаемые, форумчани.
У меня такой вопрос: возможно ли чтобы JS включал css только тогда, когда заходишь на конкретный адрес? Например, у меня статья, которая отображается на главной странице, но хочу чтобы, когда заходишь в статью, она отображалась с другим стилем. http://comfortown.orgfree.com/ здесь хочу сделать это с новостями. |
<head> ... <script type="text/javascript"> if (String(location).substr(0, 29) === 'http://comfortown.orgfree.com') document.write('<link rel="stylesheet" type="text/css" href="yourCSS.css" />'); </script> ... </head> |
<script type="text/javascript"> if (String(location).substr(0, 29) === 'http://comfortown.orgfree.com/index.php/newslatest') document.write('<style type="text/css"> <!-- .contentpaneopen a:link { visibility:hidden; } .contentpaneopen a:visited { visibility:hidden; } .a:link { visibility:hidden; } .p { visibility:hidden; } --> </style>'); </script> А вот такая конструкция рабочая? Просто она не работает, хотя я ее в страницу интегрировал с помощью JUMI |
Результат работы String(location).substr(0, 29) нельзя сравнивать с 'http://comfortown.orgfree.com/index.php/newslatest', такое сравнение всегда будет ложно, так как у этой строки длина явно больше 29. Можно еще так проверить адрес:
if (location.hostname === 'comfortown.orgfree.com' && location.pathname === '/index.php/newslatest')Если у вас хост не меняется, можете оставить только проверку пути. Теперь насчет write: в яваскрипте, если я ничего не путаю, нет синтаксиса для многострочных констант, поэтому прийдется переписать так: document.write([ '<style type="text/css">', ' .contentpaneopen a:link {', ' visibility:hidden;', ' }', ... '</style>'].join('\n')); Вообще, подключение CSS-ов надо бы делать на стороне сервера - я так понимаю вы это в какой-нибудь главный шаблон добавляете, и будет этот скрипт болтаться где надо и где не надо. |
vk65535, спасибо :thanks:
Нет, в главный шаблон я это добавлять не буду, а добавил в страницу, на которую ведет эта ссылка. Единственное, что я не понял, так как я нуб в JS, для чего нужно: join('\n') :) Нашел только, то что это добавляет значения в массив... |
|
Часовой пояс GMT +3, время: 03:47. |