0

外部ページの div から取得した値を使用してページ タイトルを変更しようとしています。すべてのファイルは同じフォルダー内のローカルにあるか、アップロード後に同じドメインの下にあります。

これは、外部ページ (settings.html) の html です。

<div id="clientName">Some Company</div>

関数を使用.loadして、別のページ (index.html) からその div のコンテンツを取得しています。

$('title').load('settings.html #clientName');

実行されると、ページ タイトルは「Some Company」ではなく、settings.html ページ (file://blahblah) へのファイル パスに変更されます。しかし、次のように、同じコンテンツを div にロードしようとすると、すべて正常に動作します。

$('div.test').load('settings.html #clientName');

私が間違っていることは何ですか?

ありがとう、クリケルコ

編集:明確にするために、上記のコードの実用性についての議論を開始したくありません。これを行うためのより良い方法があることは承知していますが、これはローカル サーバーを実行せずにローカル マシンから実行される可能性が最も高いデモ/テスト プロジェクトです。

4

3 に答える 3

0

使用しないでください$('title')IE はあまりサポートしていません。代わりにdocument.title = 'whatever';以下を使用してください

document.title = $('<div/>').load('settings.html #clientName'); 
于 2012-12-05T18:28:45.817 に答える
0

そのためにjQueryを使用できるとは思いません。古き良きものを使うだけ

document.title = $('<div/>').load('settings.html #clientName');
于 2012-12-05T18:29:28.420 に答える
0

これは、コールバックを使用して非同期で行う必要があると思います。

$('<div/>').load('settings.html #clientName', function(response, status, xhr) {
    $("title").text($(this).text());
    //or
    //document.title = $(this).text();
});

document.title = $('<div/>'). ...日曜日の月には機能しません。jQuery オブジェクトをテキストのように割り当てることはできません。

@Magicmarkker が IE で遊んでいないことについて正しい場合は$("title")...、 を使用しますdocument.title = $(this).text()

于 2012-12-05T18:40:43.380 に答える