-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.js
70 lines (68 loc) · 2.27 KB
/
script.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
window.onload = function(){
function bind(domNode, event, handler) {
var handlerWrapper = function(event) {
event = event || window.event;
if (!event.target && event.srcElement) {
event.target = event.srcElement;
}
return handler.call(domNode, event);
};
if (domNode.addEventListener) {
domNode.addEventListener(event, handlerWrapper, false);
} else if (domNode.attachEvent) {
domNode.attachEvent('on' + event, handlerWrapper);
}
return handlerWrapper;
}
function addClass(node, className) {
var classArr = [];
var nodeClassName = node.className || '';
if (node && Object.prototype.toString.call(className)==="[object String]"){
classArr[0]=className;
} else if (node && Object.prototype.toString.call(className)==="[object Array]") {
classArr = className.slice();
} else {
throw "Invalid arguments";
};
//adding classes
for (var i = 0 ; i < classArr.length; i++) {
if (nodeClassName.length===0) {
nodeClassName = classArr[i];
} else if (classArr[i] && nodeClassName.split(' ').indexOf(className) === -1 ){
nodeClassName += ' ' + classArr[i];
};
};
node.setAttribute('class',nodeClassName);
}
function removeClass(domNode, classToRemove) {
var currentClassValue = domNode.className;
if (currentClassValue.indexOf(" " + classToRemove) != -1) {
domNode.className = domNode.className.replace(" " + classToRemove, "");
return;
}
if (currentClassValue.indexOf(classToRemove + " ") != -1) {
domNode.className = domNode.className.replace(classToRemove + " ", "");
return;
}
if (currentClassValue.indexOf(classToRemove) != -1) {
domNode.className = domNode.className.replace(classToRemove, "");
return;
}
}
var toggler = document.getElementById('toggler');
var hide = false;
bind (toggler, 'click', function(){
var sidebar = document.getElementById('side-bar');
if (!hide){
removeClass(sidebar,'show');
addClass(sidebar,'hide');
toggler.innerHTML ='<i class="fa fa-chevron-right"></i>';
hide = true;
} else {
removeClass(sidebar,'hide');
addClass(sidebar,'show');
toggler.innerHTML ='<i class="fa fa-chevron-left"></i>';
hide=false;
}
})
};