[英]jQuery detect whether an element has been linked to
我想將jQuery事件處理程序附加到<div>
元素,以便每當單擊指向該<div>
的鏈接時,都會激活該處理程序並執行關聯的功能-不管鏈接的位置如何(同一頁面) ,其他頁面,其他站點)指向<div>
。
$("div#mydiv").on("linked_to", function(){ //is there a "linked_to" event?
//do something about it
});
這可能嗎? 可以使用scrollIntoView()
嗎?
您想要的是非常具體的,並且無法取消。 我認為您最好的選擇是檢測URL中的哈希變化並采取相應的措施。
您將無法檢測到div#mydiv
本身已被單擊,但是檢測哈希值#mydiv
非常接近它。
您將使用類似:
window.onhashchange = function() {
if (window.location.hash === '#mydiv') { // here you check if it was `#mydiv`
alert('hey! are you after mydiv?!')
}
}
在此處檢查示例: http : //output.jsbin.com/pikifov-單擊鏈接,並注意URL中的哈希如何變化。
完整代碼:
<div id="mydiv">mydiv</div> <hr> <a href="#mydiv">Click to go to mydiv</a> <script> window.onhashchange = function() { if (window.location.hash === '#mydiv') { alert('hey! are you after mydiv?!') } } </script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.