我有以下导航:
<ul id="chooseType" class="chooseType">
<li><a id="active" href="#" title="" class="active selected">Active</a></li>
<li><a id="inactive" href="#" title="" class="inactive">Inactive</a></li>
</ul>
使用此脚本:
<script th:inline="javascript">
/*<![CDATA[*/
$(document).ready(function() {
$('#active').click(function(){
$('#active').addClass('selected');
$('#inactive').removeClass('selected');
$('#activeList').show();
$('#inactiveList').hide();
});
$('#inactive').click(function(){
$('#active').removeClass('selected');
$('#inactive').addClass('selected');
$('#activeList').hide();
$('#inactiveList').removeClass('hidden');
$('#inactiveList').show();
});
});
/*]]>*/
</script>
点击单独页面上的链接后,我需要能够直接导航到非活动视图。如何触发('#inactive')。点击从其他页面上的链接访问该页面?为了空间和简洁,不包括要显示/隐藏的div。
编辑:缺少});为了清楚起见,我删除了一些不相关的代码而无意中消失了。
答案 0 :(得分:1)
IMO最干净的方法是从.click()处理程序中提取匿名函数,给它们命名,然后绑定#inactive
函数以在加载和.click()上运行,像这样:
$(document).ready(function() {
var active = function(){
$('#active').addClass('selected');
$('#inactive').removeClass('selected');
$('#activeList').show();
$('#inactiveList').hide();};
var inactive = function(){
$('#active').removeClass('selected');
$('#inactive').addClass('selected');
$('#activeList').hide();
$('#inactiveList').removeClass('hidden');
$('#inactiveList').show();};
$('#active').click(active);
$('#inactive').click(inactive);
inactive();
});
答案 1 :(得分:0)
如果您从特定位置点击指向该页面的链接,请为该页面提供GET值。
假设以下是您当前关注的具体位置的锚元素
<a href = "mydestinationpage.php">Click me</a>
将其更改为
<a href = "mydestinationpage.php?from=1">Click me</a>
在目标网页上,获取GET值
$from_value = $_GET["from"];
然后在JavaScript中查找值
var from_value = "<?php echo $from_value; ?>";
if(from_value != "" && from_value != null){
$('#active').removeClass('selected');
$('#inactive').addClass('selected');
$('#activeList').hide();
$('#inactiveList').removeClass('hidden');
$('#inactiveList').show();
}
如果提供了GET值,则执行相关的JavaScript代码。如果没有GET值,则没有任何反应
我假设你正在使用PHP这个解决方案