如何直接链接到扩展的FAQ选项

时间:2011-11-18 20:41:24

标签: jquery url sniffing

我想知道你是否可以就如何做到这一点给我一些想法。我们要做的是直接链接到我们的常见问题解答页面中的问题。目前我们的FAQ问题正在通过jQuery隐藏,如下所示:

$(document).ready(function() {
    $('.answer').each(function() {
        $(this).css("display", "none");
    });
    $('.question').click(function() {
        $(this).next('.answer').slideToggle("fast")
        return false;
    });
});

我们希望链接到一个特定的问题,但扩展了这个问题。

3 个答案:

答案 0 :(得分:3)

您可以使用url中的哈希值来标记要在ready函数中显示的faq。使用将其连接到哈希值的id标记每个FAQ。通过window.location.hash访问哈希值,然后仅显示与哈希值匹配的常见问题解答。

示例:

http://mypage.com/faq.html#faq1会与标有id =“faq1”

的常见问题解答相关联

答案 1 :(得分:3)

我会将URL中的quetsion部分作为哈希传递,例如URL /的faq.html#问题1

然后使用一些javascript,您可以检查哈希值,然后将用户滚动到该部分并切换幻灯片。

$(function(){
  if(window.location.hash) {
    // Fragment exists
    // use hash value to match an attribute in the question.
    // scroll to Q/A and toggle.
  }   
});

答案 2 :(得分:2)

为每个答案设置一个ID或a name,如果设置了哈希标记,则使用JS检查页面加载,并相应地打开问题:

(function(hash){
    if (hash !== undefined && hash.substring(0,1) === "#") {
     $(hash).slideToggle("fast"); 
    }  
})(window.location.hash);

示例:http://jsfiddle.net/wSRyP/

您可以使用#hashtag链接到他们:

http://fiddle.jshell.net/78Udw/show/light/