미디어위키:Liberty.js: 두 판 사이의 차이

편집 요약 없음
편집 요약 없음
47번째 줄: 47번째 줄:
   redirectedFromElement.innerHTML = redirectedFromElement.innerHTML.replace(/[()]/g, '').trim();
   redirectedFromElement.innerHTML = redirectedFromElement.innerHTML.replace(/[()]/g, '').trim();
}
}
$( window ).on( 'load', function () {
'use strict';
var hash, navHeight, id;
/* Anchor Process */
hash = window.location.hash;
navHeight = $( '.nav-wrapper' ).height();
if ( hash.indexOf( '.' ) !== -1 ) {
hash = String( hash );
hash = document.getElementById( hash.replace( '#', '' ) );
}
if ( hash ) {
$( 'html, body' ).animate( { scrollTop: $( hash ).offset().top - navHeight - 10 }, 350 );
}
/* Anchor Process End */
/* ToC click process */
$( '.toc ul li > a' ).click( function () {
if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
id = String( $( this ).attr( 'href' ) );
if ( id.indexOf( '.' ) !== -1 ) {
id = document.getElementById( id.replace( '#', '' ) );
}
$( 'html,body' ).animate( {
scrollTop: ( $( id ).offset().top - navHeight - 10 )
}, 350 );
return false;
}
} );
/* ToC click process End */
/* Title number click process */
$( '.mw-headline-number' ).click( function () {
$( 'html,body' ).animate( {
scrollTop: ( $( '#toctitle' ).offset().top - navHeight - 10 )
}, 350 );
return false;
} );
/* Title number click process End */
/* ToC Click Process */
$( '.mw-cite-backlink > a').click( function () {
if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
id = String( $( this ).attr( 'href' ) );
if ( id.indexOf( '.' ) !== -1 ) {
id = document.getElementById( id.replace( '#', '' ) );
}
$( 'html,body' ).animate( {
scrollTop: ( $( id ).offset().top - navHeight - 10 )
}, 400 );
return false;
}
} );
$( '.mw-cite-backlink > * > a' ).click( function () {
if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
id = String( $( this ).attr( 'href' ) );
if ( id.indexOf( '.' ) !== -1 ) {
id = document.getElementById( id.replace( '#', '' ) );
}
$( 'html,body' ).animate( {
scrollTop: ( $( id ).offset().top - navHeight - 10 )
}, 400 );
return false;
}
} );
$( '.reference > a' ).click( function () {
if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
id = String( $( this ).attr( 'href' ) );
if ( id.indexOf( '.' ) !== -1 ) {
id = document.getElementById( id.replace( '#', '' ) );
}
$( 'html,body' ).animate( {
scrollTop: ( $( id ).offset().top - navHeight - 10 )
}, 400 );
return false;
}
} );
/* ToC Click Process End */
/* Preference Tab Click Process */
$( '#preftoc li > a' ).click( function () {
if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
id = String( $( this ).attr( 'href' ) );
if ( id.indexOf( '.' ) !== -1 ) {
id = document.getElementById( id.replace( '#', '' ) );
}
$( 'html,body' ).animate( {
scrollTop: ( 0 )
}, 350 );
}
} );
/* Preference Tab Click Process End */
} );

2024년 12월 10일 (화) 10:42 판

/* 이 자바스크립트 설정은 리버티 스킨을 사용하는 사용자에게 적용됩니다 */

document.addEventListener('DOMContentLoaded', function() {
  function changeOrder() {
    const wrapper = document.querySelector('.liberty-content-header');
    const alertNotice = document.querySelector('.alert.alert-dismissible.fade.in.alert-info.liberty-notice');
    const contentTools = document.querySelector('.content-tools');
    const title = document.querySelector('.title');
    const contentSub = document.querySelector('.contentSub');

    if (!wrapper || !alertNotice || !contentTools || !title || !contentSub) {
      console.log("Required elements not found.");
      return;
    }

    // 화면 너비가 1022.4px 이하일 때
    if (window.innerWidth <= 1022.4) {
      // alertNotice → title → contentTools → contentSub 순으로 변경
      wrapper.appendChild(alertNotice);
      wrapper.appendChild(title);      // title을 두 번째로 이동
      wrapper.appendChild(contentTools); // contentTools를 세 번째로 이동
      wrapper.appendChild(contentSub);   // contentSub는 그대로
    } else {
      // 1022.4px 이상일 때 순서 변경
      wrapper.appendChild(alertNotice);  // alertNotice는 첫 번째
      wrapper.appendChild(contentTools); // contentTools는 두 번째
      wrapper.appendChild(title);        // title은 세 번째
      wrapper.appendChild(contentSub);   // contentSub는 네 번째
    }
  }

  // 페이지 로딩 후 즉시 순서 변경
  changeOrder();

  // 창 크기 변경 시마다 순서 업데이트
  window.addEventListener('resize', function() {
    changeOrder();
  });
});

// "mw-redirectedfrom" 클래스를 가진 요소 찾기
const redirectedFromElement = document.querySelector('.mw-redirectedfrom');

// 해당 요소가 존재하면
if (redirectedFromElement) {
  // 텍스트에서 괄호와 괄호 안의 내용을 제거하고 남은 부분만 수정
  redirectedFromElement.innerHTML = redirectedFromElement.innerHTML.replace(/[()]/g, '').trim();
}

$( window ).on( 'load', function () {
	'use strict';
	var hash, navHeight, id;

	/* Anchor Process */
	hash = window.location.hash;
	navHeight = $( '.nav-wrapper' ).height();

	if ( hash.indexOf( '.' ) !== -1 ) {
		hash = String( hash );
		hash = document.getElementById( hash.replace( '#', '' ) );
	}

	if ( hash ) {
		$( 'html, body' ).animate( { scrollTop: $( hash ).offset().top - navHeight - 10 }, 350 );
	}
	/* Anchor Process End */

	/* ToC click process */
	$( '.toc ul li > a' ).click( function () {
		if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
			id = String( $( this ).attr( 'href' ) );
			if ( id.indexOf( '.' ) !== -1 ) {
				id = document.getElementById( id.replace( '#', '' ) );
			}
			$( 'html,body' ).animate( {
				scrollTop: ( $( id ).offset().top - navHeight - 10 )
			}, 350 );
			return false;
		}
	} );
	/* ToC click process End */

	/* Title number click process */
	$( '.mw-headline-number' ).click( function () {
		$( 'html,body' ).animate( {
			scrollTop: ( $( '#toctitle' ).offset().top - navHeight - 10 )
		}, 350 );
		return false;
	} );
	/* Title number click process End */

	/* ToC Click Process */
	$( '.mw-cite-backlink > a').click( function () {
		if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
			id = String( $( this ).attr( 'href' ) );
			if ( id.indexOf( '.' ) !== -1 ) {
				id = document.getElementById( id.replace( '#', '' ) );
			}
			$( 'html,body' ).animate( {
				scrollTop: ( $( id ).offset().top - navHeight - 10 )
			}, 400 );
			return false;
		}
	} );

	$( '.mw-cite-backlink > * > a' ).click( function () {
		if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
			id = String( $( this ).attr( 'href' ) );
			if ( id.indexOf( '.' ) !== -1 ) {
				id = document.getElementById( id.replace( '#', '' ) );
			}
			$( 'html,body' ).animate( {
				scrollTop: ( $( id ).offset().top - navHeight - 10 )
			}, 400 );
			return false;
		}
	} );

	$( '.reference > a' ).click( function () {
		if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
			id = String( $( this ).attr( 'href' ) );
			if ( id.indexOf( '.' ) !== -1 ) {
				id = document.getElementById( id.replace( '#', '' ) );
			}
			$( 'html,body' ).animate( {
				scrollTop: ( $( id ).offset().top - navHeight - 10 )
			}, 400 );
			return false;
		}
	} );
	/* ToC Click Process End */

	/* Preference Tab Click Process */
	$( '#preftoc li > a' ).click( function () {
		if ( $( this ).attr( 'href' )[ 0 ] === '#' ) {
			id = String( $( this ).attr( 'href' ) );
			if ( id.indexOf( '.' ) !== -1 ) {
				id = document.getElementById( id.replace( '#', '' ) );
			}
			$( 'html,body' ).animate( {
				scrollTop: ( 0 )
			}, 350 );
		}
	} );
	/* Preference Tab Click Process End */
} );