참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다.
- 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
- 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
- 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
- 오페라: Ctrl-F5를 입력.
/**
* 문서 메뉴에 버튼을 추가하는 기능을 추가합니다.
*
* @class addArticleButtonItem
* @typedef {addArticleButtonItem}
*/
class addArticleButtonItem {
/**
* @constructor
* @param {string} selector
*/
constructor(selector) {
this.menuitem = document.querySelector(selector);
}
/**
* Add Button
*
* @param {string} buttontitle
* @param {string} buttonname
* @param {string|function} callbackOrUrl
*/
AddItem (buttontitle, buttonname, callbackOrUrl) {
let newItem = this.menuitem.cloneNode(true);
this.menuitem.after(newItem);
if (newItem.nodeName != "A") {
newItem.innerHTML = "";
let linkItem = document.createElement('a');
newItem.append(linkItem);
newItem = linkItem;
}
newItem.innerHTML = buttonname;
newItem.accessKey = '';
newItem.style.cursor = 'pointer';
newItem.title = buttontitle;
try {
newItem.href = new URL(callbackOrUrl);
} catch (e) {
newItem.href = 'javascript:;'; // 'Invalid URL'
newItem.onclick = callbackOrUrl;
return;
}
};
}
var skinContentTool = {
['liberty']: ".content-tools .dropdown-item:last-child",
['timeless']: ".mw-portlet-body #ca-move.mw-list-item"
};
window.extendedDropdownItemArray = new addArticleButtonItem(skinContentTool[mw.config.get('skin')]);