.load()
とについて混乱してい$.ajax
ます。私の中には次のjQueryコードがありますindex.html
:
$('.load_ext').click(function(e) {
var url = $(this).attr("href");
parentContainer.append($(document.createElement("div")).load(url + ' #content_to_load').html('<p class="loading">Loading…</p>').hide().fadeIn('slow'));
})
およびHTML:
<a href="test.html" class="load_ext">test</a>
test.html
上記の例では、 (idのコンテンツ)から部分的なコンテンツを読み込んでい#content_to_load
ます。また、そのページのタイトルを取得してtest.html
、タイトルページをそのページに置き換えたいと思いindex.html
ます。
私は次のようなことをしてみました:
var url = $(this).attr("href");
parentContainer.append($(document.createElement("div")).load(url + ' #content_to_load', function() {
console.log($(document).attr('title'));
}).html('<p class="loading">Loading…</p>').hide().fadeIn('slow'));
運がない。現在のページタイトルが表示されます。次のような操作でタイトルを置き換えるにはどうすればよいですか。
$('title').text(newPageTitle);
ありがとう!
編集: @ Jeff Schafer、@ dystroy、@ zeroflagLのおかげで、私はこの問題を解決することができました。変更されたコードは次のとおりです。
var url = $(this).attr("href");
parentContainer.append($(document.createElement("div")).load(url + ' #content_to_load', function(responseText) {
var title = responseText.match(/<title>([^<]*)/)[1];
document.title = title;
}).html('<p class="loading">Loading…</p>').hide().fadeIn('slow'));