Google 크롬 확장을 갑자기 직접 만든 기억
htps : // 기주 b. 코 m / 미노리 아키즈키 / 니코 r
전치
니코 니코는 아니야 니코 니코 동영상.
오른쪽 상단에 트위터 투고 버튼이 있지만, 그걸 클릭해도 동영상 이름 정도 밖에 투고되지 않습니까.
그래서, 태그 넣고 싶다-라든지 P명 정도는 넣고 싶다-라고 생각하고, 그럼 트윗 버튼 정도 날조합니까? 자바스크? 마침내 나는 자바스크에게 손을 내밀겠는가. 여우라면 원숭이에서도 함께 살아야합니다. 입니다만 쵸로메씨니까, 조금 확장 정도 만들고 싶습니까. 그리고.
필요한 것
에디터
지금 주목의 텍스트 에디터 「Atom」의 사용법과 편리한 기능 정리
htp : // bg. 코데카 mp. jp/다음 m_우치ぃty/
emacs 한 개라도 좋았습니다만, WEB 개발을 위해서 만들어진 에디터입니까. 과연 이것은 편리할 것 같다.
파일
적절한 폴더를 잘라서 준비한 것은 다음 파일입니다.
에디터
지금 주목의 텍스트 에디터 「Atom」의 사용법과 편리한 기능 정리
htp : // bg. 코데카 mp. jp/다음 m_우치ぃty/
emacs 한 개라도 좋았습니다만, WEB 개발을 위해서 만들어진 에디터입니까. 과연 이것은 편리할 것 같다.
파일
적절한 폴더를 잘라서 준비한 것은 다음 파일입니다.
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/를 열면, 위쪽의 「패키지화되어 있지 않은 확장 기능을 읽어 들인다」라고 있으므로, 여기로부터 앞의 파일의 디렉토리를 지정하면(자)
결과
만족.
Reference
이 문제에 관하여(Google 크롬 확장을 갑자기 직접 만든 기억), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Real_analysis/items/30f1e96bf4a0515d69a5
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
만족.
Reference
이 문제에 관하여(Google 크롬 확장을 갑자기 직접 만든 기억), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Real_analysis/items/30f1e96bf4a0515d69a5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)