0


すべてをアンバインドする最良の方法は何ですか?

たとえば
、関数を開始しますsomeName('mp3Player')

この関数には多くのバインドがあります

function someName(mode)
{
  if(mode == 'exit')
  {
    $('#player').remove();
    // unbind all 
    // ..........
    return true;
  }  

  if(mode == 'mp3Player')
  {
     $('body').append('<div id="player"> *** add some html code *** </div>');
     $('#test').draggable ....
     $('.myLi').sortable ....
     $('myButton').click ....
     $('.dragable').live( "dragstop", function (event, ui) ....
     return true;
  }

}

良いアイデアはありますか?

前もって感謝します!
ピーター

4

2 に答える 2

1

これを行う最も簡単な方法は、各要素で次のようなものを呼び出すだけです。

$('mySelector').unbind('eventName');

例えば:

$('.myButton').unbind('click');
于 2011-07-23T11:45:29.223 に答える
1

unbindまたは使用できますdie

jquery unbind

jquery die

あなたの場合、あなたはliveダイthe event so its better/necessary to useをバンディングしています

$('.dragable').die('dragstop');

maxedisonが言及したように単一のイベントをアンバインドするには

$("element").unbind("eventName");

これにより、要素に関連付けられたイベントがバインド解除され、要素に関連付けられたすべてのイベントがバインド解除されます。引数なしで unbind を呼び出します。

$("selector").unbind();
于 2011-07-23T11:46:40.143 に答える