2014-06-27 29 views
-2

我有一個HTML頁面。目標是動態設置<title>標籤。設置HTML <title>動態標記值

使用該Ajax調用來獲取數據,標題標籤內插入如下

$.get("/" + $.flydubai.config.CurrentLanguageCode + "/error/PageTitle/", function (data) { 
     document.title = data; 
    }); 

現在,我想更新瀏覽器標題,但HTML <title></title>標籤本身。它甚至有可能嗎?我試過這些:

document.getElementById('ttl').innerHTML = 'World'; 
ttl.innerHTML = 'world'; 
document.getElementsByTagName('title')[0].innerHTML = 'world'; 
document.querySelector.apply(document,['title']).innerHTML = 'world'; 
document.querySelectorAll.apply(document,['title'])[0].innerHTML = 'world'; 

這些都只會改變客戶端(即瀏覽器標題)。

+2

當然,他們改變了瀏覽器的標題。你期望什麼?該標題標籤的目的是在瀏覽器中顯示標題。 – GolezTrol

+0

[如何動態更改網頁的標題?](http://stackoverflow.com/questions/413439/how-to-dynamically-change-a-web-pages-title) – Kolby

+0

@isherwood「所有這些字符「實際上是針對同一問題的5種不同的解決方案。所以如果你選擇一個,那就不是那麼多了。尤其是'ttl.innerHTML ='world''並不比'$('#ttl')。html('world')'長。 :p – GolezTrol

回答

2

如果瀏覽器未檢測到並刷新標籤,則無法更改標籤內的文本。

如果您需要更改標籤並且該標籤必須爲yes或yes,則添加第二個標題標籤。

如果你使用:

document.title='my new title'; 

變更只會給你的第一個標籤製作。

雖然我沒有看到任何主要的好處,那就是標題標籤的目的,改變窗口標題。

此外,當您只想修改文本時,請使用.innerText而不是.innerHTML