勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

jQueryプラグインを作成する方法

  jQuery

jQueryのプラグインを作ってみたかった。

というのも大抵のものはググったらあるんだけど、しょっちゅう使うような自作関数や、自分で書いたjavascriptをプラグイン化できたら、カスタマイズもしやすそう。

なので、どうやって作るのか調べたところ、簡単なものならすぐ作られそう。

下記ページでメモっていた部分をプラグイン化した場合、

 

JavaScriptだけでTOPへ戻るリンクの表示

https://taitan916.info/blog/?p=107

 

test.js

(function($) {
	$.fn.pagetop = function(scroll = 300){
		jQuery("body").append('<!--TOPへ戻る--><a href="#top" id="backtop" style="bottom: 20px;display: none;position: fixed;right: 20px;z-index: 9999; padding: 10px; background: #262626; color:#fff;">TOP</a><!--TOPへ戻る-->');
		if (document.addEventListener) {
			window.addEventListener("scroll", scrollToggle, false);
		} else {
			window.attachEvent("onscroll", scrollToggle);
		}
		function scrollToggle(e){
			var scl = document.documentElement.scrollTop || document.body.scrollTop;
			document.getElementById("backtop").style.display = scl > scroll ? 'block' : 'none';
		}
	}
})(jQuery);

 

index.html

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>  
<script type="text/javascript" src="test.js"></script>
<script>
$(function(){
	$().pagetop();
});
</script>

 

サンプル

http://sample.taitan916.info/plugin/

 

無名関数でくくって、あとは処理内容を書いていくだけで良いみたい。しょっちゅう使うものに関してはプラグイン化してまとめて所持しておくと便利そうですね。

 

参考サイト

http://webdrawer.net/javascript/jqplugin.html

 - jQuery

  関連記事

jQueryで電話番号チェック

やりたかったことはjavascriptかjQueryで 電話番号のバリデート。 ...

ajaxのエラー詳細を取得する

success or errorで分岐処理はできるけど、 エラー詳細取れないの? ...

jQueryuiを用いてメールの入力補助(サジェスト)

autocompleteを用いた簡易なサジェストを見かけたのでメモ。 ■ソース ...

jQuery UIを使って簡単にダイアログを表示させる方法

ブラウザ上でユーザーに対してちょっとした確認を行いたい場合はJavaScript ...

簡単にtable内をソート

やりたかった事は、 ・テーブル内でのソート ・内容は文字、数値、日時 ・PHPじ ...