javascript - Functions in Namespace Not Attaching Event Listeners to HTML Elements -
i have local page in html , javascript helps me basic tasks @ work. i've been going on code , rewriting use best practices, since helps me learn, , i've been trying study namespacing , put use rewriting common page functions , event listeners.
window.onload = (function() { var automationpagewrapper = (function() { var self = {} self.evntlisteners = { btntextchange: function() { // code changes button text when clicked }, btncolorchange: function(formid) { // code iterates through buttons name // , makes them same default color } } self.listeners = { btnlisteners: function() { // add event listeners having buttons here } } return self; }); automationpagewrapper.listeners.btnlisteners(); });
- why isn't attaching event listeners?
- is there better way formatting/calling this?
- is professional method setting javascript code?
i tested event listeners taking functions , posting them chrome console, think work.
the full text, since people reading through of it:
// global namespace page functions window.addeventlistener("onload", function() { var automationpagewrapper = (function() { var self = {}; // namespace event listeners self.evtlisteners = { // function change color of selected button btncolorchange: function(formname) { var elementsbyname = document.getelementsbyname(formname); (var = 0; < elementsbyname.length; i++) { if (elementsbyname[i].classname == "active") { elementsbyname[i].classname = "inactive"; break; } } }, // add event listeners listeners: { btnlisteners: (function () { document.getelementbyid('sidebar').addeventlistener("click", function(e){ self.evtlisteners.btncolorchange('sidebuttons'); e.target.classname = "active"; }); })() } } return self; })(); automationpagewrapper.listeners.btncolorchange(); });
Comments
Post a Comment