使用window.location.hash链接并打开特定选项卡

时间:2013-02-16 13:48:55

标签: jquery function hash tabs

我有以下代码,可以在点击时打开和关闭标签。 想要一个ahref链接打开一个标签(通过window.location.hash),但我无法实现它。 关于如何在链接到哈希变量时打开特定选项卡的任何想法?

代码:

jQuery(document).ready(function() {
// Initialize to closed
jQuery('.wp-super-faq-answer').hide();  

// If a closed question is clicked
jQuery('.wp-super-faq-question-closed').live('click', function(event) {
    event.preventDefault();
    window.location.hash = jQuery(this).attr('id');
    var wp_super_faq_id = '#' + jQuery(this).attr('id') + '-answer';
    jQuery(this).removeClass().addClass('wp-super-faq-question-open');
    jQuery(wp_super_faq_id + ' .wp-super-faq-triangle').html('▼');
    jQuery('.wp-super-faq-answer' + wp_super_faq_id).slideDown();

});


// If an open question is clicked
jQuery('.wp-super-faq-question-open').live('click', function(event) {
    event.preventDefault();
    var wp_super_faq_id = '#' + jQuery(this).attr('id') + '-answer';
    jQuery(this).removeClass().addClass('wp-super-faq-question-closed');
    jQuery(wp_super_faq_id + ' .wp-super-faq-triangle').html('▶');
    jQuery('.wp-super-faq-answer' + wp_super_faq_id).slideUp();
});

});

1 个答案:

答案 0 :(得分:0)

您可以在hashchange上使用事件侦听器来触发所需的方法。

$(window).on("hashchange",function() {
   ...
});

请进一步使用.on()代替.live()