(한번 더 수정) |
편집 요약 없음 |
||
27번째 줄: | 27번째 줄: | ||
var ol = document.createElement("ol"); | var ol = document.createElement("ol"); | ||
ol.className = "breadcrumb"; | ol.className = "breadcrumb"; | ||
ol.innerHTML = '<li><a href=" | ol.innerHTML = '<li id="clenBreads"><a href="javascript:(function(){})();" style="color: red;">빵가루 청소</a></li>'; | ||
ol.querySelector('a | ol.querySelector('li#cleanBreads > a').addEventListener("click", function() { | ||
if (confirm("진짜로 빵가루를 전부다 청소할까요?")) localStorage.setItem(itemName, "[]"); | if (confirm("진짜로 빵가루를 전부다 청소할까요?")) localStorage.setItem(itemName, "[]"); | ||
}); | }); |
2015년 11월 5일 (목) 20:02 판
/*
* written By. LiteHell
* Warning : This script uses localStorage of your browser so BREADCUMB WILL BE DELETED IF YOU CLEAR STORAGE DATA FROM YOUR BROWSER.
*/
if (mw.config.exists("wgIsArticle") && mw.config.exists("wgPageName") && mw.config.exists("wgArticlePath")) {
var conf = mw.config.get(["wgIsArticle", "wgPageName", "wgArticlePath"]);
if (conf.wgIsArticle) {
var itemName = "pageBreadcumbs";
function initStorageIfRequired() {
if (localStorage.getItem(itemName) == null)
localStorage.setItem(itemName, "[]");
}
function setStorage(value) {
initStorageIfRequired();
localStorage.setItem(itemName, JSON.stringify(value));
}
function getStorage() {
initStorageIfRequired();
return JSON.parse(localStorage.getItem(itemName));
}
function makeBreadBar(arr_p, active) {
var arr = arr_p.slice(-15);
var ol = document.createElement("ol");
ol.className = "breadcrumb";
ol.innerHTML = '<li id="clenBreads"><a href="javascript:(function(){})();" style="color: red;">빵가루 청소</a></li>';
ol.querySelector('li#cleanBreads > a').addEventListener("click", function() {
if (confirm("진짜로 빵가루를 전부다 청소할까요?")) localStorage.setItem(itemName, "[]");
});
for (var i = 0; i < arr.length; i++) {
var now = arr[i];
var li = document.createElement("li");
if (now == active) {
li.className = "active";
li.textContent = now;
} else {
var anchor = document.createElement("a");
anchor.href = conf.wgArticlePath.replace('$1', now);
anchor.title = now;
anchor.textContent = now;
li.appendChild(anchor);
}
ol.appendChild(li);
}
return ol;
}
var articles = getStorage();
articles.push(conf.wgPageName);
setStorage(articles, conf.wgPageName);
var breadbar = makeBreadBar(articles, conf.wgPageName);
var contentButtons = document.querySelector(".libre_content_tools");
contentButtons.parentNode.insertBefore(breadbar, contentButtons);
}
}