見ているページURLのTwitter検索

    @@ -4,7 +4,6 @@ * @include http://* * @license MIT License * @require - * @private */ (function(){ var loc = document.location.href, search_url;
  • /*
     * @title 見ているページURLのTwitter検索
     * @description
     * @include http://*
     * @license MIT License
     * @require
     */
    (function(){
      var loc = document.location.href, search_url;
        if(loc.indexOf("http") !==0 || loc.indexOf("https")===0){
          alert('このページは検索しません');
          return;
        }
      var tw_search_URI = 'https://twitter.com/search?q=';
      var query =  '&f=realtime'; // if result Top Tweets  query=''
      var canonical = document.querySelector('link[rel="canonical"]')||loc;
    
      if( canonical === location.href ){
        canonical = remove_paramator(loc);
        search_url = encodeURIComponent(canonical);
      } else {
        canonical = canonical.getAttribute("href");
          if(canonical.indexOf("http")!==0){
            is_nohost(canonical);
          }  
          search_url = encodeURIComponent(canonical);
      }
      alert("検索URL = " + decodeURIComponent(search_url));
      location.href = tw_search_URI + search_url + query;
    
    // use: https://gist.github.com/wozozo/1714762 @wozozo
    /*
     * Remove utm parameters from url
     * ( Use this as bookmarklet )
    */
    
    function remove_paramator (loc){
      var search, params, i, re;
    /* If you need any queries, you would add to this line.  */
      var regex = /^utm_|^fb_action|^fb_source|^action_object_map|^action_type_map|^action_ref_map|^ref/;
      search = location.search.replace( /^\?/, '' ).split( '&' );
      params = [];
    
      if (!search) return;
      i = search.length;
      while( i-- ){
        if( !search[i].match( regex ) ){
          params.push( search[i] );
        } else {
          re = true;
        }
      }
      if (re) {
          canonical = "http://" + location.hostname + location.pathname + (( params.length ) ? '?' + params.join( '&' ) : '' );
      }
        return canonical;
    }
    
    function is_nohost(l){
        canonical =  "http://" + location.hostname + l;
      return canonical;
    }
    })();
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2014/04/20 22:13:47 - 2014-04-20
  2. 2014/04/20 22:10:05 - 2014-04-20
  3. 2014/04/20 21:56:32 - 2014-04-20