참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다.
- 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
- 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
- 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
- 오페라: Ctrl-F5를 입력.
/**
* 문서 메뉴에 버튼을 추가하는 기능을 추가합니다.
* @date 2023. 12. 31. - 오전 12:12:53
*
* @param {HTMLElement} htmlObject
*/
function addArticleMenuItem(htmlObject) {
this.menuitem = htmlObject;
this.AddItem = function (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;
}
};
this.SetMenuItem = function (htmlObject) { this.menuitem = htmlObject; };
}
let skinContentTool = {
['liberty']: ".content-tools .dropdown-item:last-child",
['timeless']: ".mw-portlet-body #ca-move.mw-list-item"
}
window.extendedDropdownItemArray =
window.extendedDropdownItemArray || new addArticleMenuItem(skinContentTool[mw.config.get('skin')]);