假設我要定位到以下鏈接:過程錨(哈希)使用jQuery和Ajax
http://www.mysite.com/feature#linktosection
的http://www.mysite.com/feature
的內容加載使用jQuery AJAX,所以我不能瀏覽到#linktosection
直到Ajax內容已被加載。一旦它被載入我需要導航(也許模擬點擊)到#linktosection
這是我的jQuery Ajax調用:
$('.changecontext-button').click(function()
{
$.ajax({
type: "POST",
url: $(this).attr('href'),
success: function(data) {
diffSection.html(data);
},
error: function(xhr, textStatus, errorThrown) {
diffSection.html(xhr.responseText);
}
});
});
你知道如何使用jQuery做到這一點?
一種替代可以是解析HREF鏈接,並將其分離成基本URL和錨URL。成功之後,我可以使用jQuery選擇器來獲取錨點鏈接並模擬.click()。
有沒有其他更好的選擇,使用jQuery或JavaScript?
謝謝先進。
把這段代碼放在你的'success:'函數中。它需要'window.location.hash'(哈希部分之後的URL中的位),然後找到具有「name」屬性的錨,並將該元素滾動到視圖中。 – 2010-12-10 15:27:07
這不起作用。 window.location.hash返回空,因爲我當前的URL沒有錨點。該錨位於'$(this).attr('href')'屬性上,所以此解決方案對我無效。 – 2010-12-10 15:44:14
啊,我明白了。那麼爲什麼不在你的成功函數中做'window.location.hash = $('a',data).attr('name');'? – 2010-12-10 15:49:05