2012-01-16 32 views
2

你可以通過標籤來觸發點擊URL嗎?觸發點擊帶有標籤的網址

例如:

我有此鏈接:<a class="contact">Contact Me</a>

,當我訪問www.example.com/#contact火災:$('a.contact').trigger('click');

這是可以通過任何哈克的方式?

回答

3
var hash = window.location.hash.slice(1); // get the hash, and strip out the "#" 

if(hash /* && hash === 'contact' */) // if there was a hash 
    $('a.' + hash).trigger('click'); // concatenate it into the selector 
+0

我想它是我想要實現的。你介意更新我的小提琴嗎? http://jsfiddle.net/ewCQm/它的基本結構 – jQuerybeast 2012-01-16 22:39:35

+0

@jQuerybeast:你想觸發一個jQuery'.click()'處理程序,還是你打算讓用戶關注鏈接? – 2012-01-16 22:41:45

+0

觸發點擊先生,因爲它不會是一個真正的URL。謝謝 – jQuerybeast 2012-01-16 22:42:36

1

您應該能夠使用jQuery BBQ plugin捕獲hashchange事件(請參閱此頁上的最後一個示例)。沿着這些線路的東西應該工作:

$(window).bind("hashchange", function(e) { 
    if ($.param.fragment() === 'contact') { 
     $('a.contact').trigger('click'); 
    } 
}); 

$(window).trigger("hashchange"); 

這應該不僅是工作的時候,你首先加載的頁面,而且還當別的東西改變片段。

+0

謝謝。我不打算使用插件,因爲他們膨脹web應用程序 – jQuerybeast 2012-01-16 22:53:26

+0

我有一個不同的要求,你的代碼片段幫助我〜! – 2014-08-14 02:59:06