사용자:하늘/hanja-dict-tools.js

< 사용자:하늘
Chirho (토론 | 기여)님의 2022년 5월 11일 (수) 10:30 판 (Chirho님이 사용자:Cerulean/hanja-dict-tools.js 문서를 넘겨주기를 만들지 않고 사용자:하늘/hanja-dict-tools.js 문서로 이동했습니다: "Cerulean" 사용자의 이름을 "하늘"(으)로 바꿀 때 문서를 자동으로 이동했습니다)

참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다.

  • 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
  • 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
  • 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
  • 오페라: Ctrl-F5를 입력.
//블록 지정하고 '漢을 가리키면 링크가 나타납니다.'
function hanja_dict_tools() {
  $('#dict-tool').remove();

  var button = document.createElement("div");
  button.id = "dict-tool";
  button.style.left = '0';
  button.style.bottom = '0';
  button.style.position = 'fixed';
  button.style.background = 'rgba(255, 255, 255, 0.94) none repeat scroll 0% 0%';
  button.style.boxShadow = '0 0 7px #acacac';
  button.style.borderRadius = '0 0.2em 0 0';
  button.style.padding = '0.25em';
  button.style.fontSize = '1.4em';
  button.style.lineHeight = '1em';
  button.style.zIndex = '1000';
  $("body").append(button);

  var icon = document.createElement('span');
  icon.innerText = '漢';
  button.append(icon);

  var selection = '';
  icon.onmouseover = function() {
    if (window.getSelection) {
      text = window.getSelection().toString();
    } else if (document.selection && document.selection.type != "Control") {
      text = document.selection.createRange().text;
    }

    if (text !== "") {
      var link = (url, text) => {
        var a = document.createElement('a');
        a.href = url, a.target = '_blank', a.rel = 'noopener noreferrer',
          a.innerHTML = '<small>' + text + ' </small>';
        return a;
      };
      button.innerHTML = '', icon.innerHTML = text;
      button.append(icon);
      $(button).append("<small> >> </small>");

      var unicode = 'u' + text.codePointAt().toString(16);
      button.append(link('https://en.wiktionary.org/wiki/' + text, '윅셔너리')),
        button.append(link('http://ko.glyphwiki.org/wiki/' + unicode, '글리프 위키')),
        button.append(link('https://commons.wikimedia.org/wiki/Category:' + text, '위키미디어'));

      var x = document.createElement('a');
      x.innerText = '[x]', x.style.cursor = 'pointer';
      x.onclick = function() {
        icon.innerText = '漢';
        button.innerHTML = '';
        button.append(icon);
      };
      button.append(x);
    }
  };
}

hanja_dict_tools();