在javascript中获取URL链接名称?

时间:2013-12-11 08:07:29

标签: javascript html internet-explorer-8 tabs html4

您好我正在尝试通过使用javascript使我的标签工作,但在更改包含内容的div时遇到一些问题。

这些是我的标签,还有更多,但我会以2显示

<li id="sub1" class="moduleTabs"><a href="#">Practice</a>
       <ul class="collapse">
           <li class="unselected"><a href="#pro1" id="t1">Principle</a></li>
           <li class="unselected"><a href="#pro2" id="t2">Basics</a></li>
       </ul>
</li>

这是我的div包含内容

<div id="pro1" class="information">
    <h2>Principles</h2>
    <p></p>
</div>
<div id="pro2" class="information">
    <h2>Basics</h2>
    <p></p>
</div>

这是我的javascript代码

$('#t1, #t2, #t3, #t4, #t5, #t6, #t7, #t8, #t9, #t10, #t11, #t12, #t13, #t14').parent('li').click(function () { 
    $(this).addClass('clicked');
    $(this).siblings().removeClass('clicked');
    //this part is to remove the content in homepage
    $('#content').hide();
    //i'm trying to get the url name #pro1 if link #t1 is click so that the div will fade in
    $(this).find('a').attr('href').fadeIn();
    $(this).siblings().find('a').attr('href').hide();
})/

我现在面临的问题是$(this).find('a').attr('href').fadeIn()不起作用。 我无法从所选的标签中获取网址链接(#pro1)

1 个答案:

答案 0 :(得分:1)

问题是$(this).find('a').attr('href')会返回一个字符串,如“#pro1”,“#pro2”......而不是直接返回jQuery对象。您必须将此字符串提供给jQuery函数以获取相应的元素。

改变这个:

$(this).find('a').attr('href').fadeIn();

$($(this).find('a').attr('href')).fadeIn();