jquery更改在不同的html页面上执行

时间:2015-04-27 16:50:21

标签: jquery html css

有没有办法在一个html更改激活jquery更改在单独的html页面中有一个链接?我认为this问题是相关的,但我并不了解所有问题。

当我点击“page1.html”中的链接时,我想打开链接并对“page2.html”进行更改。

示例:

page1.html

<a href="page2.html#about" class="tab-link">Link to Services</a>

page2.html

<div id="tab1" class="tab-content">
    <h3>Services</h3>
</div>
<div id="tab2" class="tab-content">
    <h3>Contact</h3>
</div>

的script.js

$(".tab-link").click(function(){
    $("#tab1").addClass("active");
});

1 个答案:

答案 0 :(得分:2)

第1页:

<a href="page2.html#services" class="tab-link">Link to Services</a>
<a href="page2.html#contact" class="tab-link">Link to Contact</a>

在您的网站上点击这些链接时,第2页将在浏览器中加载一个类似http://www.yourdomain.com/page2.html#services的网址。然后,您可以在javascript中使用#services获取window.location.hash部分。因此,为简化起见,我在您的标签上设置ID以匹配链接中的该位:

第2页:

<!-- I set the ID's to match the hash on the above links -->
<div id="services" class="tab-content">
    <h3>Services</h3>
</div>
<div id="contact" class="tab-content">
    <h3>Contact</h3>
</div>

和第2页的JS:

$(document).ready(function(){
    // window.location.hash returns the '#...' part of the page URL
    // which from the html I provided, would be #services or #contact.
    // We check to make sure there is one first, and then set your 'active' class
    if(window.location.hash){
        var tabID = window.location.hash;
        $(tabID).addClass('active'); 
    }
});