首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我编写url并按enter键时,如何从url获取散列代码?

问当我编写url并按enter键时,如何从url获取散列代码?
EN

Stack Overflow用户
提问于 2012-09-18 01:52:19
回答 2查看 2.3K关注 0票数 3

我有这个网址: example.com/index.html#tab-1

我写入浏览器后的url example.com/index.html#tab-1和按回车页将不会加载.

我希望获得参数tab1,并使用id tab1加载内容。

我的代码:

我称之为这一职能:

代码语言:javascript
复制
//to load

showTabContent(gethash);


showTabContent: function(id)
        {
            if(id != null)
            {
                var tabid = id.split("-");
                $("#tab"+tabid[1]).show();
            }
        },

gethash: function()
        {
            var hash = window.location.hash;
            if($.trim(hash) != "") return hash;
            else return null;
        }
EN

回答 2

Stack Overflow用户

发布于 2012-09-18 02:43:30

您可以使用此函数将URL解析为一个对象:http://james.padolsey.com/javascript/parsing-urls-with-the-dom/。获取对象后,可以使用对象的属性获取所需URL的部分。

在这篇文章中也提供了类似的答案:String URL to json object

票数 0
EN

Stack Overflow用户

发布于 2012-09-18 11:17:31

检查这个jQuery插件:

JS文件:https://raw.github.com/cowboy/jquery-hashchange/master/jquery.ba-hashchange.min.js

您的代码的解决方案:

HTML:

代码语言:javascript
复制
<a href="#tab-1">Tab1</a>
<div id="tab1"></div>

JS:

代码语言:javascript
复制
obj = {
    checkHash: function(){
        $(window).hashchange( function(){
            var hash = location.hash;
            obj.showTabContent(hash);
        })
    },
    showTabContent: function(id)
    {
        var tabid = id.split("-");
        $("#tab"+tabid[1]).show();
    } 
};

//init
obj.checkHash();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12469350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档