2011-02-02 23 views
9

私はFlowplayerのjQueryツールフレームワーク(特にツールチッププラグイン)をjQuery UIカレンダーに加えてテーブルで使用しています。jQuery Tools - > Tooltip destroyメソッド?

テーブルの各行には、行の上下に行を挿入する機能があります。

これを実行すると、クリックしたオブジェクト(イベントやオブジェクト)を複製し、その上または下に直接挿入します。

新しい行を追加した後、テーブルを更新して要素の新しいIDを生成し、datepickerを再初期化して、ツールチップを再初期化しようとしました。

私はインスタンスから完全にそれを破壊して再適用する方法を探しています。

私はdatepicker('destroy')メソッドのようなものをお探ししています。

  1. がマウスオーバーのバインドを解除し、イベントを集中する:再呼び出しツールチップは、それが自動的にそれから作られたオブジェクトのために行くとき

    $j($editRow).find('input.date').datepicker('destroy').datepicker({dateFormat: 'mm-dd-yy', defaultDate : defaultDateStr});

    私はすでにしようと試みてきました。

  2. ツールチップのDOM要素を非表示にして、ツールチップオブジェクトをターゲットから削除してから、再度適用します。同じことが起こるのは(1)

自分で破壊メソッドを作成する方法はありますか?

+0

ツールチップのバインドを解除しようとすると、「作成されたオブジェクトが自動的に移動する」という意味を説明できますか? –

+0

ツールチップを呼び出すために使用しているコードと、それらを試してアンバインドするために使用したコードを投稿できますか? – themerlinproject

答えて

5

私はkwicherの方法を試みたが、それは仕事を得ることができませんでしたを行う必要があります。私は縮小されたコードを変更しようとしていましたが、私は変更を行うための正しい場所を見つけました。

私はこれを動作させました。 ValidationFailedは、ツールヒントが適用されているすべての入力フィールドに適用するクラスです。

$('.validationFailed').each(function (index) { 
    $(this).removeData('tooltip'); 
}); 

$('.tooltip').remove(); 

私はこのいくつかの異なる方法を試みたが、これは私が正しく動作してから新しいツールチップを妨げることなく、除去後、追加のツールチップを追加するために許可された唯一の組み合わせでした。

私が知る限り、ツールヒントクラスの削除では、実際のツールチップのdivを取り除くことができます。そのツールチップのdivは、イベントも直接配線されています。 .removeDataを使用すると、ツールチップが将来再バインドされるようになります。あなたのアイデアやトムの答えに

1

次のようにあなたはまだあなたが行うことができ、それを必要とする場合: - :私は最後のネイティブ関数の後に持って

$.extend(self, { 
... 

ツールチップの実装ファイルでのどこかに、以下の機能

destroy: function(e) { 
     tip.detach(); 
     } 

を追加。その後

あなたは、先端を削除したい、火災:

$(.tip).data('tooltip').destroy(); 

それはトリック

K

5

ビルは、私は三つのことが必要であることが判明:

  1. がツールチップターゲット要素からツールチップターゲット要素から
  2. アンバインドイベントリスナーを「ツールチップのデータを削除し
  3. 要素を削除する(このツールチップの手法を使用して任意のHTMLを許可していると仮定します)

したがって、この単純な関数はこのトリックを行う必要があります。破壊したいツールチップのターゲット要素を含むjQueryオブジェクトに渡してください。

function destroyTooltips($targets) { 
    $targets.removeData('tooltip').unbind().next('div.tooltip').remove(); 
} 
-1

多分それは遅すぎる... ;-)
だ。しかし、ここであなたは「ツールチップ」のすべてのメソッドを見つけることができます:http://www.w3schools.com/bootstrap/bootstrap_ref_js_tooltip.asp

は、私はそれを有する、通り過ぎることができる誰かのためのヒントを残します問題:異なる「ツールチップ」アクション/オブジェクトを扱う。

0
if($element.data('ui-tooltip')) {//if tooltip has been initialized 
     $element.tooltip('destroy'); 
    } 
関連する問題