2009-02-09 58 views
0

这将很难解释,但我会尽我所能。jQuery快速选择产品链接

我有一个3个div的页面,每个页面包含每个产品的信息和订购按钮。访客可以点击产品图片,它会基本上隐藏所有的div,然后显示与他们点击的图片相关的图片。

我有一个侧边栏,它在网站的所有页面上全局运行,它与每个产品有“快速链接”。我想知道是否有方法可以将这些内容链接到产品页面,以便人们可以从网站的任何页面点击它们,并且会打开产品页面并显示他们已经点击的产品。

我认为可以通过在产品页面链接的末尾使用#product1,#product2等来完成,但我不太确定如何实现。有没有人有任何想法?

PS:在产品页面上,只需检测产品图像上的onclick,然后隐藏并显示一个单独的DIV(不通过使用#链接锚点)即可选择产品。

回答

0

您想使用锚点。

因此,你在DIV中命名了一个锚点。

<div id="product1"> 
<a name="product1"> 
</div> 

然后,按照您所描述的那样,使用'#'链接到该链接。如果您从另一个页面进行链接,请使用完整路径,如果您是通过同一页面进行操作,请使用#product1。

<a href="/path/to/page/#product1"> 

现在,您发现的棘手问题是jQuery意识到您已经在页面加载时请求锚点。这段代码的确依赖于像上面这样的构造,其中div的id与锚相同。一小段示例代码在这里调用div上的show()方法,其名称与传递给URI的锚点相同。

$(document).ready(function() { 
    var uri = document.location.toString(); 
    if (uri.match("#")) { 
     anchor = uri.split("#")[1]; 
     $('#' + anchor).show(); 
    } 
});