2012-12-06 43 views
1

我看到很多參考文件用於替換標籤之間的文本或替換用ID標識的標籤,但我的任務非常不同,因爲我需要替換部分標籤本身。例如,我想改變...使用JavaScript代替html標籤(不在)之內的文本

<body etc> 

,使之成爲...

<body somestring etc> 

的變化需要使用JavaScript,即在瀏覽器中執行:一個CMS後(如Wordpress)已經完成了它。

+1

您正在尋找更改HTML中的*屬性*。 – madth3

+0

什麼都沒有,因爲我剛剛意識到我的問題似乎是設置一個屬性,如id = xyz,當我真正需要的是自由注入可能調用JS函數的字符串。 – WilliamK

回答

4

看起來像你需要新的屬性添加到DOM元素:

document.getElementsByTagName("html")[0].setAttribute("id", "something"); 
1

如果您正在使用jQuery你可以用一條線,如實現這一目標如下:

$("html").attr({foo:"bar", baz:"bing"}); 
1

如果您運行WordPress的網站,你可能已經在使用jQuery。與jQuery這是一件很容易

$('html').attr('id', 'bob'); 
//just for testing 
alert($('html').attr('id')); 
+0

這看起來好像可能會插入一個ID,但是如果它被應用到另一個標籤,例如BODY標籤插入一個onLoad語句,如: – WilliamK

+0

如果你是使用jquery,那麼你可以簡單地 ' $(document).ready(function(){ \t //任何你想要的 }); (「#other」)。click(function(){ alert('hellooo'); }); ' –

+0

你可以在這裏找到關於你可以改變什麼屬性以及如何在這裏[鏈接](http://api.jquery.com/category/attributes/)或關於事件[鏈接](http:// api。 jquery.com/category/events/) –

3

document['getElementsByTagName']('html')[0]['setAttribute']('attr', 'value');

+0

添加[]有什麼好處?另外,我如何使用它來添加多個屬性? – WilliamK

0

如果要設置標準屬性的值,只需使用DOM屬性:

document.getElementsByTagName("html")[0].id = 'foo'; 

或者更簡單地說:

document.documentElement.id = 'foo'; 

設置非標準屬性或屬性不是一個好主意,請使用0改爲屬性。

相關問題