案例是;
我有2个网页..
第1页 - 主页
主页包含导航(主页,产品)
产品导航有一个下拉选项。
列表是:(Product1,Product2)
使用此代码将这两个选项链接到第二页
<a href="<?php echo $this->url(array('controller'=>'ProductItem',
'action'=>'index')); ?>#folio" class="imglink">Folio Plus</a>
结果:效果很好
第2页 - 产品
产品下拉菜单仍显示在第二页。
隐藏了Product1和Product2内容,因此只有在“产品”下拉列表中选择产品时,才会显示每个产品。
问题:当我在产品页面上并从下拉列表中选择另一个产品时,页面内容不会改变,但网址现在指向我选择的产品..赞;
当显示product1然后我想切换到其他产品说product2时,url地址现在指向product2但显示的内容仍然是product1 ..
我使用了这段代码。
var anc = window.location.href.split('#')[1];
$('#' + anc + '.prod_cont').show();
请问任何解决方案?...提前致谢
答案 0 :(得分:0)
尝试使用window.location.hash
来读取和修改哈希值。它应该更可靠,因为浏览器会为你解析它。
此外,您的选择器选择的内容是ID为anc
的ID和类prod_cont
。它会找到的一个例子是:<div id='someanc' class='prod_cont'/>
。如果你有多个具有该id的div标签,你可能会遇到麻烦,因为我相信jQuery可能会将其转换为document.getElementById,它只返回一个元素。我认为你正在寻找的结构是这样的结构:<div id='someanc'><div class='prod_cont' style='display: hidden;'></div></div>
或类似的东西。适当的选择器是'#'+anc+' > .prod_cont'
,它应该在ID为prod_cont
的元素中获取所有具有类anc
的子元素。