通过特殊锚链接标记运行jquery函数

时间:2016-02-12 17:49:00

标签: jquery

通常我们可以使用这种方法调用jquery函数:

<a id="mylink" href="#mylink2">link</a>
$(document).ready(function(){
    $("#mylink").click(function(){
    // do something
    });
});

现在我想知道是否可以通过锚链接调用jquery函数?

例如,如果用户通过(www.example.com/#mylink)等网址加载网页,则Jquery会运行一个特殊功能。

这样的事情:

$(document).ready(function(){
        if(click on a tag mylink2 anchor)
        // do something
        });
    });

2 个答案:

答案 0 :(得分:1)

我想为了弄清楚在hashchange期间点击了哪个元素,你需要拦截2个事件。

var id;
$(window).on('hashchange',function(){
        if(id == "mylink")
          alert("mylink was clicked");
});

$('a').on('click',function()
{
  id = this.id; // sets the id of the anchor linked clicked for comparison.
});

示例:https://jsfiddle.net/DinoMyte/mb10r8ox/1/

答案 1 :(得分:1)

尝试使用hashchange事件

&#13;
&#13;
$(window).on("hashchange", function() {
  alert("hashchange event")
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<a id="mylink" href="#mylink2">link</a>
<div id="myLink2">myLink2</div>
&#13;
&#13;
&#13;