次の見出しへ
by
yuggrdrasill
2016-12-17 [2016/12/17 21:23:00]
次の見出し(h1,h2,h3,h4,h5,h6要素)の場所へ移動します。
-
/*
* @title 次の見出しへ
* @description 次の見出し(h1,h2,h3,h4,h5,h6要素)の場所へ移動します。
* @include http://d.hatena.ne.jp/yuggrdrasill/
* @license MIT License
* @require
*/
//jQueryで見出し移動
var getNowPosition = function() {
return (document.documentElement.scrollTop || document.body.scrollTop);
};
var move =function (el) {
jQuery(":header").each(function(){
var linkTop = jQuery(this).offset().top;
var scrollTop = Math.floor(linkTop);
if(scrollTop > getNowPosition() + 2){
jQuery("html,body").animate({scrollTop:scrollTop},100);
return false;
}
});
}
if (window['jQuery'] &&
window['jQuery']['fn'] &&
window['jQuery']['fn']['offset']
){
move();
} else{
// config
var src_url = 'http://code.jquery.com/jquery.min.js';
// jQuery loading
var s=document.createElement('script');
s.setAttribute('src',src_url);
document.getElementsByTagName('body')[0].appendChild(s);
// jQueryが読み込み終わったら、メッセージを表示する。
var id = window.setInterval(function(){
//ファイル読み込みが完了したかどうか知る方法がわからないので、
//暫定的に最後に定義するプロパティの存在をチェックする
if (window['jQuery'] &&
window['jQuery']['fn'] &&
window['jQuery']['fn']['offset']
){
window.clearInterval(id);
move();
}
},100);
}
-
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。