참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다.
- 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
- 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
- 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
- 오페라: Ctrl-F5를 입력.
var observer = new MutationObserver(function(mutationsList, observer) {
// 페이지 내용이 변경될 때마다 실행될 콜백 함수
mutationsList.forEach(function(mutation) {
// catlinks 요소를 찾음
var catlinks = document.getElementById("catlinks");
var subCatlinks = document.getElementById("mw-normal-catlinks");
if (subCatlinks && subCatlinks.offsetHeight > 26) {
// catlinks의 높이가 26px 이상이면 작업 수행
subCatlinks.style.height = "25.594px";
// catlinks 내부에 버튼 요소 추가
var button = document.createElement("button");
button.className = "catlinks-button";
button.textContent = "더 보기";
button.addEventListener("click", toggleCatlinks);
var buttonContainer = document.createElement("div");
buttonContainer.className = "catlinks-button-container";
buttonContainer.appendChild(button);
catlinks.appendChild(buttonContainer);
}
});
});
// MutationObserver를 문서에 등록하여 변화를 감지
observer.observe(document.body, { subtree: true, childList: true });
window.addEventListener("load", function() {
var catlinks = document.getElementById("catlinks");
var subCatlinks = document.getElementById("mw-normal-catlinks");
if (subCatlinks && subCatlinks.offsetHeight > 26) {
// catlinks의 높이가 26px 이상이면 작업 수행
subCatlinks.style.height = "25.594px";
// catlinks 내부에 버튼 요소 추가
var button = document.createElement("button");
button.className = "catlinks-button";
button.textContent = "더 보기";
button.addEventListener("click", toggleCatlinks);
var buttonContainer = document.createElement("div");
buttonContainer.className = "catlinks-button-container";
buttonContainer.appendChild(button);
catlinks.appendChild(buttonContainer);
}
});
function toggleCatlinks() {
var catlinks = document.getElementById("mw-normal-catlinks");
var catlinksButtonContainer = document.querySelector(".catlinks-button-container");
observer.disconnect(); // MutationObserver 일시 중지
catlinks.style.height = ""; // 높이 속성을 없애기
catlinksButtonContainer.remove(); // catlinks-button-container 제거
// 다시 MutationObserver 등록
observer.observe(document.body, { subtree: true, childList: true });
}