2012-03-22 57 views
0

所以我想創建一個對象,所以我可以替換一個參數的值(這顯然是不可能通過JS),所以我創建它,我不斷收到文檔錯誤8.追加孩子 - 文檔錯誤8

var container = document.getElementById('player'); 
var obj = document.createElement('object'); 

obj.setAttribute('type', 'application/x-shockwave-flash'); 
var p1 = obj.appendChild('param'); 
var p2 = obj.appendChild('param'); 
var p3 = obj.appendChild('param'); 
var p4 = obj.appendChild('param'); 

p1.setAttribute('name', 'allowFullScreen'); 
p1.setAttribute('value', 'true'); 

p2.setAttribute('name', 'allowScriptAccess'); 
p2.setAttribute('value', 'always'); 

p3.setAttribute('name', 'allowNetworking'); 
p3.setAttribute('value', 'all'); 

p4.setAttribute('name', 'flashvars'); 
p4.setAttribute('value', 'test'); 

我覺得這是因爲我沒有對象添加到HTML,但我想,通過使用appendChild,仍然有同樣的問題...

+0

嘗試[swfobject](http://code.google。 com/p/swfobject /),它比重塑輪子更有趣... – max 2012-03-22 04:22:56

+1

[DOM 2 appendChild](http://www.w3.org/TR/2004/REC-DOM-Level-3-Core- 20040407/core.html#ID-184E7107)方法需要DOM節點作爲參數,而不是字符串。 – RobG 2012-03-22 05:30:17

回答

1

使用document.createElement

var p1 = obj.appendChild(document.createElement('param'));