Hatena::Diary::Profile
by
noromanba
2012-02-07 [2012/02/07 07:43:30]
閲覧中のはてなダイアリー/はてなブログのダイアリープロフィールにジャンプする(はてなグループ対応)
@@ -19,17 +19,25 @@
http://@USENAME.hatenablog.com/about
*/
+// @TODO はてダ/ブロを表現するクラスベースにした方がいいかもしんない
+//function HatenaWeblog() {
+//
+//}
(function() {
- if (isHatenaWebLog) {
+ var domain = searchHatenaDomain();
+ if (domain) {
var origin = location.origin || location.protocol + '//' + location.hostname;
- // @TODO はてダが別扱いだからクラス使ってみようか
- location.href = origin + '/about';
+ var topPage = origin;
+ if (domain == 'd.hatena.ne.jp') {
+ topPage += '/' + Hatena.Author.name;
+ }
+ location.href = topPage + '/about';
}
})();
-function isHatenaWebLog() {
+function searchHatenaDomain() {
var domains = [
'd.hatena.ne.jp',
'hatenablog.com',
@@ -38,15 +46,10 @@
'hatenadiary.jp'
];
var host = location.hostname;
- for (var i = 0, domain; i < domains.length; domain = domains[i], i++) {
- if (host.lastindexOf(domain)) {
- return domain;
+ for (var i = 0; i < domains.length; i++) {
+ if (host.indexOf(domains[i]) != -1) {
+ return domains[i];
}
}
return '';
}
-
-// @TODO はてダ/ブロを表現するクラス
-function HatenaWeblog() {
-
-}
/*
* @title <-Hatena::Diary::Profile
* @description Go to Hatena::Diary/HatenaBlog Profile (閲覧中のはてなダイアリー/ブログのダイアリープロフィールにジャンプする)
* @include http://d.hatena.ne.jp/*
* @include http://*.hatenablog.com/*
* @include http://*.hateblo.jp/*
* @include http://*.hatenadiary.com/*
* @include http://*.hatenadiary.jp/*
* @license MIT License http://noromanba.mit-license.org/2012+
* @require
* @see http://let.hatelabo.jp/noromanba/let/* (Permalink)
* @see http://d.hatena.ne.jp/keyword/%A4%CF%A4%C6%A4%CAID
* @private NIY
*/
/*
Profile Pages -> origin + /about
http://d.hatena.ne.jp/@USERNAME/about
http://@USENAME.hatenablog.com/about
*/
// @TODO はてダ/ブロを表現するクラスベースにした方がいいかもしんない
//function HatenaWeblog() {
//
//}
(function() {
var domain = searchHatenaDomain();
if (domain) {
var origin = location.origin || location.protocol + '//' + location.hostname;
var topPage = origin;
if (domain == 'd.hatena.ne.jp') {
topPage += '/' + Hatena.Author.name;
}
location.href = topPage + '/about';
}
})();
function searchHatenaDomain() {
var domains = [
'd.hatena.ne.jp',
'hatenablog.com',
'hateblo.jp',
'hatenadiary.com',
'hatenadiary.jp'
];
var host = location.hostname;
for (var i = 0; i < domains.length; i++) {
if (host.indexOf(domains[i]) != -1) {
return domains[i];
}
}
return '';
}
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。