我试图隐藏一个名为"详细信息"在所有单个活动页面上,但不在我的主要活动页面上。
主要活动页面为demosite.com/events/
单个事件页面为demosite.com/events/?event_id=2
。
我已经尝试过使用css伪类,但却无法使用它。我正在尝试使用javascript,但它没有工作 - 因为它隐藏了"详细信息"两页都有课。
这是我迄今为止所尝试过的。
$(function(){
var url = document.location.href;
if (url.toLowerCase().indexOf('http://demosite.com/events/') >= 0) {
$('.details').hide();
} else {
$('.details').show();
}
});
答案 0 :(得分:1)
您需要做的是查看是否有参数传递给网址,然后根据该参数隐藏。所以这里有一个javascript函数来获取参数并检查它:
<script>
$(document).ready(function() {
var eventid = getParamterByName('event_id');
if ( eventid != "" ) {
$('.details').hide();
}
else {
$('.details').show();
}
});
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
</script>
答案 1 :(得分:1)
所有页面都包含demosite.com/events
- 您正在寻找不具有event_id
s的网页。
if (document.location.search.indexOf('event_id=') >= 0))
$('.details').hide();
} else {
$('.details').show();
}