0

ツールチップ プラグイン (tooltip.js & tooltip.css) があります。このツールチップの要件は、SPAN または DIV 要素内に rel='tooltip' と title='' の両方が必要であることです。その後、ツールチップ プラグインがツールチップを開始します。

問題は、それらの属性を持つページに DOM HTML 要素を追加しているのに、それらが機能しないことです。それらは最初は機能しますが、dom 要素を追加すると、それらの DOM 要素が機能しなくなります。

参考までに使用しています(Jquery mobile 1.3.1およびjQuery 1.9.1)

HTML

<table id='maintable'>

</table>

ジャバスクリプト

//function initiates with this stuff
var part1 = "<tr><td rel='tooltip' title='new title'>Something</td></tr>";
$('#maintable').append(part1).trigger('create');

私は何を間違っていますか?起動しないのはなぜですか?参考までに .trigger('refresh') は機能しません。

4

2 に答える 2

1

これを変える

targets.bind( 'mouseenter', function()

$(document).on('mouseenter', targets, function(){

また、

target.bind( 'mouseleave', remove_tooltip );
tooltip.bind( 'click', remove_tooltip )

$(document).on('mouseleave', target, remove_tooltip);
$(document).on('click', tooltip, remove_tooltip);

そしてdocument、私のコードで、最も近い静的 ** (決して削除または置換されていない) ** 親要素に置き換えます。

これにより、動的要素にイベント委任が与えられ、コードを引き続き実行できるようになります。

于 2013-06-21T18:57:28.580 に答える
0

私は jQuery (モバイル) の専門家ではありませんが、ツールチップは DOM 要素が追加される前に初期化されると思います。このような場合は、ツールチップが DOM ツリーをチェックする前に要素を追加するか、より動的に、通常の使用例である可能性が高く、ツールチップを再初期化する必要があります。とにかく、可能であればツールチップの実装を確認して、最も簡単で効率的な方法を見つけることをお勧めします。

于 2013-06-21T16:44:50.653 に答える