0

案例是;

我有2个网页..

第一页 - 主页

主页包含导航(主页、产品)

产品导航有一个下拉选项。

列表是:(Product1,Product2)

这两个选项都使用此代码链接到第二页,

 <a href="<?php echo $this->url(array('controller'=>'ProductItem', 
                                            'action'=>'index')); ?>#folio" class="imglink">Folio Plus</a>

结果:效果很好

第 2 页 - 产品

产品下拉菜单仍然出现在第二页上。

Product1 和 Product2 内容是隐藏的,因此每个产品仅在您在产品下拉列表中选择产品时才会出现。

问题:当我在产品页面上并从下拉列表中选择另一个产品时,页面内容不会改变,但 url 地址现在指向我选择的产品..like;

当显示product1然后我想切换到其他产品说product2,url地址现在指向product2但显示的内容仍然是product1..

我用了这段代码。

 var anc = window.location.href.split('#')[1];
    $('#' + anc + '.prod_cont').show();

请问有什么解决方案吗?..提前谢谢

4

1 回答 1

0

尝试改为使用window.location.hash来读取和修改哈希。它应该更可靠,因为浏览器会为您解析它。

此外,您的选择器选择的是 ID 为 valueanc和 class的东西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'应该是获取所有prod_cont具有 id 元素内部的类的子元素anc

于 2013-01-28T06:44:48.007 回答