<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/smoothness/jquery-ui.css">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.min.js"></script>
$('#box').draggable();
$('#box').draggable({ axis: "x" }); // 横方向のみ
$('#box').draggable({ axis: "y" }); // 縦方向のみ
$('#box').draggable({ opacity: 0.5 })
$('#box').draggable({ handle: '.handle' });
$('#box').draggable({ cancel: '.cancel' });
$('#box').draggable({ cursor: 'all-scroll' });
default | デフォルト(矢印) |
pointer | リンクカーソル |
crosshair | 十字カーソル |
move | 全方向矢印 |
text | テキスト編集 |
wait | 砂時計/レインボーカーソル |
help | ヘルプ(?) |
n-resize | 上リサイズ |
e-resize | 右リサイズ |
s-resize | 下リサイズ |
w-resize | 左リサイズ |
ne-resize | 右上リサイズ |
se-resize | 右下リサイズ |
sw-resize | 左下リサイズ |
nw-resize | 左上リサイズ |
all-scroll | 手 |
$('#box').draggable({ grid: [20, 50] });
grid: [横, 縦]
で指定する。
$('#box').draggable({ helper: 'clone' });
デフォルト:original
$('#box').draggable({ addClasses: false });
デフォルトでは、draggable要素には常時ui-draggable
Classが付く。
イベント名 | オプションのキー | |
---|---|---|
draggable作成 | dragcreate | create |
ドラッグ開始 | dragstart | start |
ドラッグ中 | drag | drag |
ドラッグ終了 | dragstop | stop |
$('#box').draggable({
drag: function(event, ui) {
console.log(ui.position.left);
}
});
$('#box').on('drag', function(event, ui) {
console.log(ui.position.left);
};
メソッド | |
---|---|
有効化 | ("enable") |
無効化 | ("disable") |
永久に無効化 | ("destroy") |
すべてのオプションを取得 | ("option") |
オプションを取得 | ("option", "オプション") |
オプションを変更 | ("option", "オプション", "値") |
$('#box').draggable('enable');
var x = $('#box').draggable("option", "オプション"); // オプションの値の取得
$('#box').draggable("option", "オプション", "値"); // オプションの値の設定
$('#target').droppable();
$('$target').droppable({ accept: '#box' });
$('#target').droppable({ hoverClass: 'droppable-hover' });
$('#target').droppable({ activeClass: 'droppable-highlight' });
$('#target').droppable({ tolerance: 'fit' });
fit | すべて入る |
intersect | 50%入る(デフォルト) |
pointer | ポインタが入る |
touch | 少しでも入る |
$('#target').droppable({ disabled: true });
$('#target').droppable({ addClasses: false });
デフォルトでは、droppable要素には常時ui-droppable
Classが付く。
イベント名 | オプションのキー | |
---|---|---|
droppable作成 | dropcreate | create |
draggableドラッグ開始 | dropactivate | activate |
draggableドラッグ終了 | dropdeactivate | deactivate |
droppableに乗る | dropover | over |
droppableから外れる | dropout | out |
ドロップされる | drop | drop |
dropover, dropout
はtolerance
に依存
$('#target').droppable({
drop: function(event, ui) {
console.log('Dropped!');
}
});
$('#target').on('drop', function(event, ui) {
console.log('Dropped!'));
});
メソッド | |
---|---|
有効化 | ("enable") |
無効化 | ("disable") |
永久に無効化 | ("destroy") |
すべてのオプションを取得 | ("option") |
オプションを取得 | ("option", "オプション") |
オプションを変更 | ("option", "オプション", "値") |
$('#target').droppable('enable');
var x = $('#target').droppable("option", "オプション"); // オプションの値の取得
$('#target').droppable("option", "オプション", "値"); // オプションの値の設定
$('#box').draggable({ helper: 'clone' });
$('#target').droppable({
accept: '#box',
drop: function(event, ui) {
ui.draggable.clone().appendTo(this);
}
});
$('#box').resizable();
$('#box').resizable({ ghost: true });
$('#box').resizable({ handles: 'n, e, s, w' });
$('#box').resizable({ handles: [ {s: '#resize-s', e: '#resize-e'} ] });
n | 上 |
e | 右 |
s | 下 |
w | 左 |
ne | 右上 |
se | 右下 |
sw | 左下 |
nw | 左上 |
$('#box').resizable({ autoHide: true });
$('#box').resizable({ containment: 'parent' });
parent, document
を指定できる。デフォルト:false
$('#box').resizable({ aspectRatio: true });
$('#box').resizable({ grid: [20, 50] });
grid: [横, 縦]
で指定する。
$('#box').resizable({ maxHeight: 300 });
maxHeight, maxWidth, minHeight, minWidth
が指定できる
$('#box').resizable({ animate: true });
$('#box').resizable({ animateDuration: 'fast' });
デフォルト:slow
$('#box').resizable({ animateEasing: 'easeOutBounce' });
デフォルト:swing
イベント名 | オプションのキー | |
---|---|---|
resizable作成 | resizecreate | create |
リサイズ開始 | resizestart | start |
リサイズ中 | resize | resize |
リサイズ終了 | resizestop | stop |
$('#box').resizable({
stop: function(event, ui) {
console.log('Resized!');
}
});
$('#box').on('resizestop', function(event, ui) {
console.log('Resized!'));
});
メソッド | |
---|---|
有効化 | ("enable") |
無効化 | ("disable") |
永久に無効化 | ("destroy") |
すべてのオプションを取得 | ("option") |
オプションを取得 | ("option", "オプション") |
オプションを変更 | ("option", "オプション", "値") |
$('#box').resizable('enable');
var x = $('#box').resizable("option", "オプション"); // オプションの値の取得
$('#box').resizable("option", "オプション", "値"); // オプションの値の設定
$('#box').resizable({
stop: function(event, ui) {
console.log(ui.size.width, ui.size.height);
}
});
複数選択や範囲選択が可能になる。
$('#list').resizable();
$('#list').resizable({ filter: 'li' });
イベント名 | オプションのキー | |
---|---|---|
selectable作成 | selectablecreate | create |
選択開始 | selectablestart | start |
選択中 | selectableselecting | selecting |
選択後 | selectableselected | selected |
選択終了 | selectablestop | stop |
選択解除中 | selectableunselecting | unselecting |
選択解除後 | selectableunselected | unselected |
$('#list').selectable({
selected: function(event, ui) {
console.log('Selected!');
}
});
$('#list').on('selected', function(event, ui) {
console.log('Selected!'));
});
start, stop
にはui
はない
メソッド | |
---|---|
有効化 | ("enable") |
無効化 | ("disable") |
永久に無効化 | ("destroy") |
すべてのオプションを取得 | ("option") |
オプションを取得 | ("option", "オプション") |
オプションを変更 | ("option", "オプション", "値") |
$('#list').selectable('enable');
var x = $('#list').selectable("option", "オプション"); // オプションの値の取得
$('#list').selectable("option", "オプション", "値"); // オプションの値の設定
自動でselecting, selected
Classが付く
var a = [];
$('#list').selectable({
selected: function(event, ui) {
if (a.indexOf(ui.selected.id) === -1) {
a.push(ui.selected.id);
}
console.log(a);
},
unselected: function(event, ui) {
var id = ui.unselected.id;
a.splice(a.indexOf(id),1);
console.log(a);
}
});
$('#list').sortable();
$('#list').sortable({ axis: "x" }); // 横方向のみ
$('#list').sortable({ axis: "y" }); // 縦方向のみ
$('#list').sortable({ opacity: 0.5 })
$('#list').sortable({ handle: '.handle' });
$('#list').sortable({ cancel: '.cancel' });
$('#list').sortable({ cursor: 'all-scroll' });
default | デフォルト(矢印) |
pointer | リンクカーソル |
crosshair | 十字カーソル |
move | 全方向矢印 |
text | テキスト編集 |
wait | 砂時計/レインボーカーソル |
help | ヘルプ(?) |
n-resize | 上リサイズ |
e-resize | 右リサイズ |
s-resize | 下リサイズ |
w-resize | 左リサイズ |
ne-resize | 右上リサイズ |
se-resize | 右下リサイズ |
sw-resize | 左下リサイズ |
nw-resize | 左上リサイズ |
all-scroll | 手 |
$('#list').sortable({ grid: [20, 50] });
grid: [横, 縦]
で指定する。
var s = $( "#list" ).sortable( "serialize" );
要素がitem-1, item_1, item=1
のようなIDでないと使えない
イベント名 | オプションのキー | |
---|---|---|
sortable作成 | sortcreate | create |
ドラッグ開始 | sortstart | start |
ドラッグ中 | sort | drag |
並べ替え中 | sortchange | change |
ドラッグ終了 | sortstop | stop |
並べ替え終了 | sortupdate | update |
$('#list').sortable({
start: function(event, ui) {
console.log(ui.item[0].id);
}
});
$('#list').on('sortstart', function(event, ui) {
console.log(ui.item[0].id);
};
メソッド | |
---|---|
有効化 | ("enable") |
無効化 | ("disable") |
永久に無効化 | ("destroy") |
すべてのオプションを取得 | ("option") |
オプションを取得 | ("option", "オプション") |
オプションを変更 | ("option", "オプション", "値") |
$('#list').sortable('enable');
var x = $('#list').sortable("option", "オプション"); // オプションの値の取得
$('#list').sortable("option", "オプション", "値"); // オプションの値の設定
$('#list').sortable({
update: function(event, ui) {
console.log($(this).sortable('serialize'));
}
});
<div id="accordion">
<h3>Header1</h1>
<p>Text1</p>
<h3>Header2</h1>
<p>Text2</p>
<h3>Header2</h1>
<p>Text2</p>
</div>
$('#accordion').accordion();
<input type="text" id="complete">
var list = ['a', 'b', 'c'];
$('#complete').autocomplete({ source: list });
$('#complete').autocomplete({
source: list,
minLength: 0
});
デフォルト:1
メソッド | |
---|---|
有効化 | ("enable") |
無効化 | ("disable") |
永久に無効化 | ("destroy") |
すべてのオプションを取得 | ("option") |
オプションを取得 | ("option", "オプション") |
オプションを変更 | ("option", "オプション", "値") |
$('#complete').autocomplete('enable');
var x = $('#complete').autocomplete("option", "オプション"); // オプションの値の取得
$('#complete').autocomplete("option", "オプション", "値"); // オプションの値の設定
<button>Button</button>
$('button').button();
<input type="checkbox" id="check"><label for="check">Checkbox</label>
$('input').button();
<div>
<input type="checkbox" id="radio1"><label for="radio1">Radio1</label>
<input type="checkbox" id="radio2"><label for="radio2">Radio2</label>
<input type="checkbox" id="radio3"><label for="radio3">Radio3</label>
</div>
$('div').buttonset();
<input type="radio" name="radio" id="radio1"><label for="radio1">Radio1</label>
<input type="radio" name="radio" id="radio2"><label for="radio2">Radio2</label>
<input type="radio" name="radio" id="radio3"><label for="radio3">Radio3</label>
$('input').button();
<div>
<input type="radio" name="radio" id="radio1"><label for="radio1">Radio1</label>
<input type="radio" name="radio" id="radio2"><label for="radio2">Radio2</label>
<input type="radio" name="radio" id="radio3"><label for="radio3">Radio3</label>
</div>
$('div').buttonset();
<input type="text">
$('input').datepicker();
$('input').datepicker({ dateFormat: 'yy/mm/dd' });
d | 日(1〜2桁) |
dd | 日(2桁)3桁) |
D | 曜日(短縮) |
DD | 曜日(完全) |
m | 月(1〜2桁) |
mm | 月(2桁) |
M | 月名(短縮) |
MM | 月名(完全) |
y | 年(2桁) |
yy | 年(4桁) |
o | 年間通算日(1〜3桁) |
oo | 年間通算日( |
@ | Unixタイムスタンプ |
$('input').datepicker({ numberOfMonths: 3 });
$('input').datepicker({ numberOfMonths: [2, 3] });
[縦, 横]
で指定
$('input').datepicker({
minDate: -2,
maxDate: '+1m'
});
y, m, w, d
が指定できる
$('input').datepicker({ firstDay: 1 });
$('input').datepicker({ autoSize: true });
dateFormat
の値によって幅が変化する
$('input').datepicker({
monthNames: [ '1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月' ],
monthNamesShort: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
});
$('input').datepicker({
dayNames: ['日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'],
dayNamesShort: ['日', '月', '火', '水', '木', '金', '土'],
dayNamesMin: ['日', '月', '火', '水', '木', '金', '土']
});
$('input').datepicker({ showMonthAfterYear: true });
$('input').datepicker({ yearSuffix: '年' });
<div id="msg">Message</div>
$('#msg').on('click', function() {
$('#msg').dialog('open');
});
$('#msg').dialog({ autoOpen: false });
$('#msg').dialog({
buttons: {
"OK": function() {
$(this).dialog('close');
}
}
});
$('#msg').dialog({ title: 'Title' });
$('#msg').dialog({ modal: true });
<div id="bar" style="width:200px;"></div>
$('#bar').progressbar();
>$('#bar').progressbar({ value: 50 });
未指定の場合0%になる
<div id="slider" style="width:200px;"></div>
$('#slider').slider();
$('#slider').slider({ orientation: 'vertical' });
$('#slider').slider({ range: true });
$('#slider').slider({ range: true });
$('#slider').slider({ min: 10 });
$('#slider').slider({ max: 80 });
$('#slider').sider({ step: 5 });
$('#slider').sider({ value: [10, 25] });
イベント名 | オプションのキー | |
---|---|---|
slider作成 | slidecreate | create |
スライド開始 | slidestart | start |
スライド中 | slide | slide |
スライド終了 | slidestop | stop |
$('#slider').slider({
slide: function(event, ui) {
console.log(ui.value);
}
});
$('#slider').on('slide', function(event, ui) {
console.log(ui.value);
};
メソッド | |
---|---|
有効化 | ("enable") |
無効化 | ("disable") |
永久に無効化 | ("destroy") |
すべてのオプションを取得 | ("option") |
オプションを取得 | ("option", "オプション") |
オプションを変更 | ("option", "オプション", "値") |
$('#slider').slider('enable');
var x = $('#slider').slider("option", "オプション"); // オプションの値の取得
$('#slider').slider("option", "オプション", "値"); // オプションの値の設定
スライダーとプログレスバーを連動:
$('#slider').slider({
slide: function(event, ui) {
$('#bar').progressbar('option', 'value', ui.value);
}
});
<div id="tabs">
<ul>
<li><a href="#menu1">Menu1</a>
<li><a href="#menu2">Menu2</a>
<li><a href="#menu3">Menu3</a>
</ul>
<div id="menu1">Menu1</div>
<div id="menu2">Menu2</div>
<div id="menu3">Menu3</div>
</div>
$('#tabs').tabs();
$('#tabs').tabs({ selected: 1 });
0から始まる
$('#tabs').tabs({ disabled: [1, 2] });
$('#tabs').tabs({ hide: { effect: 'slideUp', duration: 200 } });
$('#tabs').tabs({ show: { effect: 'slideDown', duration: 200 } });
$('#box').on('click', function() {
$(this).effect('explode', {pieces: 4}, 'slow');
});
© 2019 shge.github.io 利用規約・プライバシー