Google 크롬 확장을 갑자기 직접 만든 기억

할 수 있는 것은 이쪽.
htps : // 기주 b. 코 m / 미노리 아키즈키 / 니코 r

전치



니코 니코는 아니야 니코 니코 동영상.
오른쪽 상단에 트위터 투고 버튼이 있지만, 그걸 클릭해도 동영상 이름 정도 밖에 투고되지 않습니까.

그래서, 태그 넣고 싶다-라든지 P명 정도는 넣고 싶다-라고 생각하고, 그럼 트윗 버튼 정도 날조합니까? 자바스크? 마침내 나는 자바스크에게 손을 내밀겠는가. 여우라면 원숭이에서도 함께 살아야합니다. 입니다만 쵸로메씨니까, 조금 확장 정도 만들고 싶습니까. 그리고.

필요한 것



에디터



지금 주목의 텍스트 에디터 「Atom」의 사용법과 편리한 기능 정리
htp : // bg. 코데카 mp. jp/다음 m_우치ぃty/

emacs 한 개라도 좋았습니다만, WEB 개발을 위해서 만들어진 에디터입니까. 과연 이것은 편리할 것 같다.

파일



적절한 폴더를 잘라서 준비한 것은 다음 파일입니다.
  • manifest.json
  • script.js
  • jquery.min.js

  • manifest.json



    우선 manifest.json 어쨌든 기본적인 정보를 써야 하는 것 같다.
  • maches> 어떤 URL에서 플러그인을 사용하는지
  • js > 어느 JS를 사용할 것인가? 어쩌면.
  • run_at > 언제 JS를 유효하게 할까. 어쩌면.

  • manifest.json
    {
      "name": "NicoTwitter",
      "version": "0.0.1",
      "manifest_version": 2,
      "description": "ニコニコのツイッター投稿機能をカスタマイズしたいやつ",
      "content_scripts": [
        {
          "matches": ["http://www.nicovideo.jp/watch/*"],
          "js": ["jquery.min.js","script.js"],
          "run_at": "document_start"
        }
      ]
    }
    
    

    jquery.min.js



    여러분 아시다시피 jquery의 파일

    script.js



    자바스크의 본체.
    jquery에서 트위터 버튼을 찾아 그 앞에 트윗 내용을 넣은 링크를 추가합니다.
    바탕으로 한 것이 ↓이므로, 전부의 트윗 버튼이 대상이 되어 있지만 신경쓰지 않는다.

    jQuery를 사용하여 30 분 안에 Chrome 확장 프로그램을 만들려고했습니다.
    htp : // bg. 푹리 r-in c. 이 m/jp/2012/09/j 쿠에 ry-ch 로메-에 x 텐시온. HTML

    그리고, 소스에도 쓰여져 있지만 아무래도 잡히지 않는 버그가 있어 방치하고 있습니다. 가미미.

    script.js
    $(window).load(function(){
        $(".socialLinkTwitter").each(function()
        {
            // .socialLinkTwitter がツイッターボタンのところなので探しに行く
            // 絶対eachじゃなくてもよさそうこれ
                var title = $("title").text();
                // ページタイトルを取得
    
                var tagsP = "";
                // 末尾に「P」がついているタグ
                var tagsOther = "";
                // それ意外のタグ
    
                $("a.videoHeaderTagLink").each(function()
                { // ページからタグを探す
                    var tag = $(this).text();
                    // タグの内容
                    if(tag.match(/(P|P)$/i))
                    { // 正規表現で末尾がPか判定
                        tagsP = tagsP + "" + tag + "";
                        // P名はすみつきカッコでくくる
                    }else if (tag)
                    { // 空じゃないかどうかだけ検査
                        tagsOther = tagsOther + " [" + tag + "]";
                        // ふつーのカッコでくくる
                    }
                });
    
                var linktwitter = "https://twitter.com/intent/tweet" ;
                // ツイッターのURL
                var tweetStringAllTag = tagsP + tagsOther + " " + title + " " ;
                var tweetStringPTag = tagsP + " " + title + " " ;
                // ツイート内容
                var pageURL = document.URL.match(/([^\?]*)(\?.*)?$/)[1];
                // パラメータは邪魔な事が多いので外す
                var movieNum = pageURL.match(/.*\u002f([^\u002f\?]+)(\?.*)?$/)[1];
                // 元々ついているツイートボタン同様、動画番号をハッシュタグにする為URLから抽出
    
                // 以下、なぜか $("a.originalVideoLink").attr("href") がちゃんと動いてくれないので
                // とりあえず保留。
                // この関数の中で $("a.originalVideoLink").attr("href") ってやると
                // なぜか "javascript:;" という文字列が帰ってくる……なぞ……
                // if(!(movieNum.match(/sm/)))
                // { // 動画ページがコミュニティ動画等のページであれば、動画番号に「sm」がついていないので
                //  movieNum = $("a.originalVideoLink").attr("href").match(/sm\d+$/);
                //  // オリジナル動画へのリンクを探して動画番号を抽出し直す
                // }
    
                var linkURLBase =
                    linktwitter +
                    "?url=" + encodeURIComponent( pageURL ) +
                    "&hashtags=" + movieNum ;
                // リンクの生成
    
                var linkURLAllTag = linkURLBase +
                    "&text=" + encodeURIComponent( tweetStringAllTag );
                // 全タグツイートリンクの生成
    
                var linkURLPTag = linkURLBase +
                    "&text=" + encodeURIComponent( tweetStringPTag );
                // Pタグツイートリンクの生成 これコードの重複率上がりそう。
    
                $(this).parent().prepend(
                    "<a href=\"" + linkURLAllTag + "\">【全タグつきのツイート】</a>" +
                    "<a href=\"" + linkURLPTag + "\">【Pタグつきのツイート】</a>"
                );
                // ツイートボタンの直前に追加
        });
    });
    

    중괄호 매달아 쓰는 목구멍이라고 생각하면서도 이쪽이 보기 쉽다.

    로드



    chrome://extensions/를 열면, 위쪽의 「패키지화되어 있지 않은 확장 기능을 읽어 들인다」라고 있으므로, 여기로부터 앞의 파일의 디렉토리를 지정하면(자)

    결과









    만족.

    좋은 웹페이지 즐겨찾기