English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

jQuery one() メソッド

jQueryのイベント

one()メソッドは選択された要素に一つまたは複数のイベントハンドラを追加します。

これにより、イベントが発生したときに実行される機能も追加されます。

このメソッドの名前はoneとされていますが、このメソッドに追加されたイベントハンドラは各要素に対して一度だけ実行されます。どちらも一度だけ実行されます

文法:

$(selector).one(event, data, function)

インスタンス

clickイベントをすべての<p>要素に追加します(このイベントは各<p>要素に対して一度だけトリガーされます):

$("p").one("click", function(){
  $(this).animate({fontSize: "+=5px"});
});
テストをしてみる‹/›

one()メソッドとon()メソッドの違いを表示:

$(document).ready(function(){
  $("#para-1).one("click", myFunc);
  $("#para-2.on("click", myFunc);
});
テストをしてみる‹/›

すべての<p>要素に複数のイベントハンドラを追加:

$("p").one("click dblclick", function(){
  $(this).animate({fontSize: "+=5px"});
});
テストをしてみる‹/›

データを関数に渡す:

$(document).ready(function(){
  $("p").one("click", {msg: "あなたが先ほどクリックした!!!"}, showMsg)
});
function showMsg(event) {
  $(this).append(event.data.msg);
});
テストをしてみる‹/›

パラメータの値

パラメータ説明
eventスペースで区切られた1つまたは複数のイベントを指定
data(オプション)関数に他のデータを渡すために指定する
注意:次にデータone()メソッドにパラメータを提供すると、イベントがトリガーされたときにそれをevent.data属性内のハンドラ。
functionイベントがトリガーされたときに実行される機能

jQueryのイベント