0

我的主页上有一些“了解更多”链接,所有这些链接都对应于“更多信息”页面上的不同内容部分。这些不同的内容部分都使用 display: none 隐藏。

我想知道是否有一种方法可以使当我单击特定的“了解更多”链接时,用户将被发送到“更多信息”页面,以及与他们单击的“了解更多”链接相对应的内容部分将显示。

我想不出一种方法来实现这一点,但我希望它是可能的,也许使用 JavaScript。

编辑:我目前拥有的代码没什么特别的。<a>主页上的四个链接,然后是更多信息页面上的四个 div,最初都使用display: none.

4

5 回答 5

1

解决方案最终相当简单,我做了这个问题的最佳答案中描述的内容:Getting URL hash location, and using it in jQuery

于 2013-01-28T08:49:20.380 回答
0

实现此目的的一种方法是使用要显示的部分的 id 向该链接添加一个哈希,如下所示<a href="/moreinfo#section-id">Learn More</a>:然后只需在 /moreinfo 页面上检查它window.location.hash并显示 div。

于 2013-01-28T07:59:19.793 回答
0

你必须这样做:try to use named anchors.

第一的:

<a href="your-page-url-here#section-3">Learn More</a>

当使用单击此链接时,用户将导航到具有不同部分的特定页面。

第二:

在此页面上,假设您要显示第三部分:

 .....
 <a name='section-3'></a>
 <h1>Your section-3</h1>

在您的情况下divs are hidden,请为此使用 js 或 jQuery:

因为您将在位置 url 中获得哈希,然后使用 .substr()' and.indexOf()` javascript 方法。

尝试put this script在那些页面上where you are having your hidden divs

$(function(){
   var url = window.location.href;
   var obj = url.substr(url.indexOf('#'));
   $(obj).show();
});
于 2013-01-28T08:07:27.627 回答
0
 <a href="javascript:showContent('id_here');">Learn more</a>

 <script>
    function showContent(id) {
        $("#"+id).show();
    }
 </script>
于 2013-01-28T07:50:37.833 回答
0

我认为这是可能的。您可以将信息放在一个 div 上,然后单击“了解更多”,显示该 div。这样,你甚至不需要超链接,只需点击事件,就像楼上的代码一样。当然,这个div之前是隐藏的。

于 2013-01-28T07:54:08.657 回答