मुझे भी लगा कि इसकी जरूरत है, लेकिन दुर्भाग्य से शिसेक का कोड अब काम नहीं करता है। मैंने जल्दी से इसे एक साथ रखा जो क्रोम में ठीक (अभी) चलता है। यदि ट्रेलो अपने कोड को इसके चारों ओर बदलता है, तो संभवतः वह काम करना बंद कर देगा।
वैसे भी, यह हर सूची के शीर्ष बाईं ओर एक छोटा × -symbol जोड़ता है जो सूची को क्लिक पर छुपाता है। इसे निश्चित रूप से कुछ लोकलस्टोरेज या कुकीज के साथ बेहतर बनाया जा सकता है, लेकिन जब मैं ट्रेलो को पूरे काम के सत्र के लिए खुला रखता हूं तो बोर्ड को साफ करना ठीक है।
(function () {
var closeList = function (list) {
list.style.transition = 'max-height 1s ease-in-out, max-width .2s 1s ease-in-out';
list.style.maxHeight = '4px';
list.style.maxWidth = '4px';
};
var openList = function (list) {
list.style.transition = 'max-height .2s 1s ease-in-out, max-width .2s ease-in-out';
list.style.overflow = 'hidden';
list.style.maxHeight = '6000px';
list.style.maxWidth = '250px';
};
var lists = document.getElementById('board').querySelectorAll('div.list');
for (var i = 0; i < lists.length; i++) {
(function () {
var list = lists[i];
var close = document.createElement('a');
openList(list);
close.setAttribute('href', '#');
close.setAttribute('class', 'close');
close.innerHTML = '×';
close.style.textDecoration = 'none';
close.style.position = 'absolute';
close.style.left = '1px';
close.style.top = '-5px';
list.appendChild(close);
close.addEventListener('click', function (e) {
e.preventDefault();
if (close.getAttribute('class') == 'close') {
closeList(list);
close.setAttribute('class', 'open');
close.innerHTML = 'o';
}
else {
openList(list);
close.setAttribute('class', 'close');
close.innerHTML = '×';
}
});
})();
}
})();