触发jquery在url中单击带有hashtag的元素

时间:2016-05-23 20:53:46

标签: jquery

我想知道是否可以通过将用户发送到其末尾包含“#somerandomword”的特定网址来触发弹出窗口。

通常他们点击页面上的一个按钮来触发弹出窗口,而我只想在给用户指定特定链接时触发弹出窗口。

1 个答案:

答案 0 :(得分:1)

这可以通过简单地在URL中查找哈希来轻松完成页面加载:

$(document).ready(function(){

    // the #-prefixed portion of the URL that serves
    // as a fragment identifier for the document, from
    // www.example.com/page#fragment
    // document.location.hash would return #fragment
    let hash = document.location.hash;

    // because the hash identifies a fragment of
    // the document by its id, and the '#' character
    // specifies an id-selector in CSS we pass that
    // value to jQuery to select the correct element
    // and call the click() method - without arguments -
    // to trigger a click event:
    $(hash).click();
});

或者,:target的CSS选择器选择散列所针对的元素,因此它也可以使用:

$(document).ready(function(){
    $(':target').click();
});

参考文献: