getPageTitle

  • /*
     * @title getPageTitle
     * @description ページタイトルの載ったtextareaを画面右上に表示 http://firegoby.jp/archives/1292 これをaタグじゃなくてタイトルだけ表示するように改造,閉じるボタンも追加
     */
    
    var title = document.title;
    var loc   = location.href;
    
    var div = document.createElement('DIV');
    var txt = document.createElement('TEXTAREA');
    var a = document.createElement('A');
    txt.textContent = txt.innerText = title;
    div.style.position = 'absolute';
    var y = document.documentElement.scrollTop || document.body.scrollTop ;
    div.style.top = y+'px';
    div.style.right = '8px';
    div.style.zIndex = '9999';
    div.style.backgroundColor = "#ccc";
    txt.style.display = "block";
    txt.style.width = '400px';
    txt.style.height = '5em';
    txt.style.padding = '1em';
    a.textContent = a.innerText = "close";
    
    function txtClick(e){
        var target = e.srcElement || e.target;
        try{
            target.select();
        } catch(e) {
            target.focus();
        }
    }
    
    function scrollTop(){
        var y = document.documentElement.scrollTop || document.body.scrollTop ;
        div.style.top = y+'px';
    }
    
    function close(){
        div.parentNode.removeChild(div);
    }
    
    if(window.addEventListener) {
        txt.addEventListener('click', txtClick, false);
        window.addEventListener('scroll', scrollTop, false);
        a.addEventListener('click', close, false);
    } else {
        txt.attachEvent('onclick', txtClick);
        window.attachEvent('onscroll', scrollTop);
        a.attachEvent('onclick', close);
    }
    
    document.body.appendChild(div);
    div.appendChild(txt);
    div.appendChild(a);
    
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2013/08/20 15:27:23 - 2013-08-20
  2. 2013/08/20 15:26:22 - 2013-08-20