edit: Этот вопрос касается рефакторинга jQuery. По сути, у меня большой блок кода, но я хочу посмотреть, смогут ли другие люди придумать лучший способ его реорганизовать. Так как я новичок в jQuery, я не уверен, на правильном ли я пути или нет с моим дизайном
оригинальное сообщение:
Я работаю над букмарклетом, который добавляет элементы HTML на страницу. Я строю боковую панель, которая является div с ul внутри него. Я пытаюсь отделить стили от своего кода, а также писать вещи, чтобы ими было легко управлять, если мне нужно будет внести изменения в будущем. Можно ли реорганизовать этот код, чтобы он стал чище / эффективнее?
myObj = {
$sidebar: {},
createSidebar: function () {
var self = this, $undo = {}, $redo = {}, $email = {}, $reset = {}
self.$sidebar = $("<div id='myObj-sidebar'><ul></ul></div>");
$undo = $('<a></a>', {
id: 'sidebar-undo',
className: 'sidebar-item',
href: '#',
text: 'Undo',
click: function (e) {
//self.doUndo();
e.preventDefault();
}
});
$redo = $('<a></a>', {
id: 'sidebar-redo',
className: 'sidebar-item',
href: '#',
text: 'Redo',
click: function (e) {
//self.doRedo();
e.preventDefault();
}
});
$email = $('<a></a>', {
id: 'sidebar-change-email',
className: 'sidebar-item',
href: '#',
text: 'Change E-Mail',
click: function (e) {
//self.createEmailDialog();
e.preventDefault();
}
});
$reset = $('<a></a>', {
id: 'sidebar-reset-all',
className: 'sidebar-item',
href: '#',
text: 'Reset All',
click: function (e) {
//self.doReset();
e.preventDefault();
}
});
self.$sidebar.find('ul').append($undo, $redo, $email, $reset);
self.$sidebar.find('.sidebar-item').wrap('<li/>');
self.$sidebar.appendTo("body");
}
}