Home > JavaScript > はてなブックマークのコメントがニコニコ動画的に表示されるChrome Extensionを作ってみました。

はてなブックマークのコメントがニコニコ動画的に表示されるChrome Extensionを作ってみました。

  • 2011-11-10 (木) 0:57
  • JavaScript

 なんとなく思いついたので、はてなブックマークのコメントが、ブラウザ上でニコニコ動画的に表示されるChrome Extensionを作ってみました。
 
 Chromeマーケットにのせるようなものでもないので、とりあえずzipを貼り付けておく。
 →zipファイル

 
 

とりあえず、ソースコードを以下に示します。
なお、ニコニコ動画的に文字を流す処理には、R9ラボNicoScreen.jsというJQueryプラグインを利用させて頂きました。
■manifest.json

{
	"name": "HateCome",
	"version": "1.0",
	"description": "はてなブックマークのコメントを表示",
	"browser_action": {
		"default_icon": "icon.png", // アイコンの画像ファイル
		"popup": "popup.html" // ポップアップ表示されるHTMLファイル
	},
	"content_scripts": [
		{
			"matches": ["http://*/*","https://*/*"],
			"css": [],
			"js": ["jquery-1.6.2.min.js","nicoscreen.js","hatecome.js"],
			"all_frames": true,
			"run_at":"document_end"
		}
	],
  "permissions": [
	"tabs",
	"http://*/*", "https://*/*"
  ]
}

■hatecome.js

var addComments=function(list){
	$("html").css("height","100%");
	var body=$("body");
	body.attr("id","nicoscreen");
	var h=getPageHeight();
	body.css("width","100%");
	body.css("height",h+"px");
	var sp=list.split(",");
	var obj = {
		"base":{
			color:"black",
			speed:"slow",
			interval:"normal",
			font_size:"48px",
			loop:true
		},
		"comments":sp
	};
	nicoscreen.set(obj);
	nicoscreen.start();
	body.css("overflow-y","auto");
};

var getPageHeight=function(){
	var yScroll;
	if (window.innerHeight && window.scrollMaxY) {
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){
		yScroll = document.body.scrollHeight;
	} else {
		yScroll = document.body.offsetHeight;
	}
	var windowHeight;
	if (self.innerHeight) {
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) {
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) {
		windowHeight = document.body.clientHeight;
	}
    if(yScroll < windowHeight){
        pageHeight = windowHeight;
    } else {
        pageHeight = yScroll;
    }
    return pageHeight;
};

■popup.html

<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<script>
chrome.tabs.getSelected(window.id, function (tab) {
	$.ajax({
		type: "GET",
		url: "http://b.hatena.ne.jp/entry/jsonlite/",
		data:{
			"url":tab.url
		},
		dataType: "jsonp",
		success: function(json) {
			var comments=getComments(json.bookmarks);
			chrome.tabs.executeScript(window.id,
				{code:"addComments('"+comments+"')"});
			window.close();
		},
		error : function(){}
  });
});

var getComments=function(obj){
	var n=obj.length;
	var comments=[];
	for(var i=0;i<n;i++){
		var com=obj[i].comment;
		if(com)comments.push(com);
	}
	return comments;
};
</script>

Related posts:

  1. Google ChromeのExtensionをもう少し作ってみる。
  2. Google Chrome Extensionを作ってみる。
  3. HTML5-Canvas版Mouse Toy
  4. Google ChromeでScreenShotを撮ってお絵描きするextensionを作ってみた。
  5. AndroidでJavaScriptのタッチイベントを試してみた。(2) #android #js

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://termat.sakura.ne.jp/javascript/%e3%81%af%e3%81%a6%e3%81%aa%e3%83%96%e3%83%83%e3%82%af%e3%83%9e%e3%83%bc%e3%82%af%e3%81%ae%e3%82%b3%e3%83%a1%e3%83%b3%e3%83%88%e3%81%8c%e3%83%8b%e3%82%b3%e3%83%8b%e3%82%b3%e5%8b%95%e7%94%bb%e7%9a%84/trackback/?_wpnonce=1512a1c4a7
Listed below are links to weblogs that reference
はてなブックマークのコメントがニコニコ動画的に表示されるChrome Extensionを作ってみました。 from TM's Workspace

Home > JavaScript > はてなブックマークのコメントがニコニコ動画的に表示されるChrome Extensionを作ってみました。

Google Analyticator

119
Unique
Visitors
Powered By Google Analytics

Return to page top