Jquery在URL中使用#SOMETHING来触发事件

时间:2014-06-07 16:09:04

标签: javascript jquery

我有以下代码

<a href="#go">go</a>
<a href="#go2">go</a>
<a href="#go3">go</a>
<a href="#go4">go</a>

<div id="go" class=contents>1</div>
<div id="go2" class=contents>2</div>
<div id="go3" class=contents>3</div>
<div id="go4" class=contents>4</div>

和一个由锚点

触发的脚本
$('a').click(function() {
    $($(this).attr('href')).css('color', 'red');
});

所以当点击其中一个锚时,我可以发射一些事件,我的问题是。如果我刷新页面(URL将包含#go标签),是否可以从URL捕获#go并触发相同的事件?

1 个答案:

答案 0 :(得分:5)

当然,在页面加载时,您可以捕获哈希并像这样触发事件处理程序

$(function() {
    var hash   = window.location.hash;
    var anchor = $('[href="' + hash + '"]');

    anchor.trigger('click');
});