2010-06-23 59 views
1

我想了解更多關於JavaScript的信息,我正在搞東西。有人能告訴我爲什麼我會在我的腳本中發現錯誤嗎?JavaScript初學者框架錯誤

// Effects object 
var effects = { 
// Display an object 
show : function(obj) { 
    obj.style.display = 'block'; 
}, 
// Hide an object 
hide : function(obj) { 
    obj.style.display = 'hide'; 
}, 
// Toggle 
toggle : function(obj) { 
    if (obj instanceof Array) { 
    alert('array'); 
    } else { 
    alert('single'); 
    } 
} 
} 

// Selector Class 
var s = { 
id : function(name) { 
    return document.getElementById(name); 
}, 
class : function(name) { 
    node = document.getElementsByTagName("body")[0]; 
    var a = []; 
    var re = new RegExp('\\b' + classname + '\\b'); 
    var els = node.getElementsByTagName("*"); 
    for(var i=0,j=els.length; i<j; i++) 
    if(re.test(els[i].className)) 
    a.push(els[i]); 
    return a; 
} 
} 

window.onload = function() { 
s.id('toggle-content').onClick(function() { 
    effects.toggle(s.class('hidden-content')); 
}); 
} 

我收到以下錯誤:

當頁面加載:

Error: s.id("toggle-content").onClick is not a function Source File: http://localhost/cms/web/js/admin.js Line: 40

有輕微的切線。有沒有一種標準化的方式來從dom上課?

已解決。

的onclick =代替的onClick()

回答

0

在JavaScript事件名稱不遵循屬性和方法的駝峯風格。他們都是小寫字母。將onClick更改爲onclick,您應該很好。

在你微小的切線上,一些瀏覽器已經支持getElementsByClassName(我認爲這是你要求的)。對於不支持它的瀏覽器,有alternatives