ツイート中テキストを選択可能に

  • /*
     * @title ツイート中テキストを選択可能に
     * @description ウェブ版Twitterでタイムライン中の文字列選択ができない不具合(?)への暫定対策・ユーザースクリプト版→ https://github.com/furyutei/twEnablesSelection
     * @include https://twitter.com/*
     * @license MIT License
     * @javascript_url
     */
    
    (function(w,d){
    var get_selected_text=function(){
        if (w.getSelection) return w.getSelection().toString();
        if (d.selection && d.selection.type != 'Control') return d.selection.createRange().text;
        return '';
    };
    $('div[role="main"], div#page-container').each(function(){
        var jq_container=$(this), container=jq_container.get(0);
        if (!container) return;
        var jq_events = $._data(container).events;
        if (!jq_events || !jq_events.click) return;
        var handlers=[];
        $.each(jq_events.click, function(i, click_event){
            handlers[handlers.length] = click_event.handler;
        });
        var bind_handlers=function(){
            $.each(handlers, function(i, handler){
                jq_container.click(handler);
            });
        };
        $(w).mouseup(function(e){
            var jq_target = $(e.target);
            if ((!jq_target.hasClass('js-tweet-text') && jq_target.parents('.js-tweet-text').size() <= 0) || !get_selected_text()) return;
            jq_container.unbind('click');
            setTimeout(bind_handlers, 100);
        });
    });
    })(window,document);
    
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2014/12/27 01:58:46 - 2014-12-27
  2. 2014/12/27 01:58:06 - 2014-12-27
  3. 2014/12/26 03:22:43 - 2014-12-26
  4. 2014/12/26 03:14:57 - 2014-12-26
  5. 2014/12/26 03:08:46 - 2014-12-26