Хотите знать, есть ли возможность скрыть или показать контент на основе НЕСКОЛЬКИХ URL?
Например. Пользователь находится дома или на сайте www.url.com/ или www.url.com/index.html.
Конкретный элемент display: block
или же display: none
if(location=="http://domain.com/") {
Прекрасно работает, но как я могу указать несколько URL-адресов в одном и том же формате выше?
if(location=="http://google.com") {
//Do something here
} else {
//Do something else here
}
Ты можешь использовать sammy.js (http://sammyjs.org/). У этого есть хорошая функция маршрутизации URL.
Вы можете использовать PHP для $_GET
Информация об URL. Допустим, у вас есть следующий URL:
https://www.wherever.com/some_file.php?css1=1&css2=1
В другой раз, скажем, URL выглядит так:
https://www.wherever.com/some_file.php?css3=1&css4=1
Когда вы пишете свою страницу PHP, которая генерирует HTML:
<?php
$css = '';
function link_builder(){
$a = func_get_args(); $lo = "<link rel='stylesheet' type='text/css' href='"; $lc = "' />"; $o = '';
foreach($a as $v){
$o .= "$lo$v$lc";
}
return $o;
}
if(isset($_GET['css1'], $_GET['css2']) && $_GET['css1'] === '1' && $_GET['css2'] === '1'){
$css = link_builder('cssPath1.css', 'cssPath2.css');
}
if(isset($_GET['css3'], $_GET['css4']) && $_GET['css3'] === '1' && $_GET['css4'] === '1'){
$css = link_builder('cssPath3.css', 'cssPath4.css');
}
echo $css;
?>
С помощью этой методологии вы можете заранее создавать отдельные внешние CSS-файлы, которые можно кэшировать в памяти браузера клиента. Стилирование JavaScript этого не сделает.
Путем тестирования location.pathname
как это :
document.getElementById('specific').style.display = location.pathname === "/index.html" ? 'none' : 'block';