2013-09-25 117 views
-2

我正在使用此Custom Elements文章學習HTML5。我正在嘗試創建上述文章中提到的自定義元素的基本示例。但我不知道爲什麼我收到提示ReferenceError:使用HTML5創建自定義元素時未定義XFoo

ReferenceError: XFoo is not defined while creating custom element using HTML5 

代碼:

<!doctype html> 
<html> 
<head> 
<script type="text/javascript"> 

var xFoo = document.createElement('x-foo'); 
xFoo.addEventListener('click', function(e) { 
    alert('Thanks!'); 
}); 
var xFoo = new XFoo(); 
document.body.appendChild(xFoo); 
</script> 
</head> 
<body> 
<x-foo>hello</x-foo> 
</body> 
</html> 

請幫我找出小問題。

+2

'xFoo'!=='XFoo'。我也沒有看到註冊表。還有一個它是實驗性的筆記。用新的自定義元素擴展/添加DOM也是非常糟糕的imho。 – PeeHaa

+0

哦。我的錯誤..我說得對。但現在我得到了TypeError:xFoo不是一個構造函數 – Jaydipsinh

+0

問題反饋:你怎麼理解錯誤?並請更新您的問題與新的信息,使其更加正確。 – hakre

回答

1

錯誤是自我解釋:你沒有​​構造函數叫做XFoo,JS可以用它來創建你的自定義元素。隨着教程你以下的狀態,你需要寄存器新元素:

var XFoo = document.register('x-foo'); 

這條線在腳本的開頭應解決您的問題。

+0

document.register是不是一個函數,我得到這個錯誤,如果我包括上面的代碼 – Jaydipsinh

+0

您使用哪個瀏覽器? –

+0

m使用firefox – Jaydipsinh