qTip2を使用して、ツールチップ内のテキストフィールドに「共有」リンクを表示します。
ツールチップ自体は正常に機能しますが、選択したすべてのテキストでテキストフィールドにフォーカスを合わせたいと思います。これが見つかりましたが、どういうわけかフォーカス/クリック+選択が機能していないようです。
show
コールバックが呼び出された後、テキスト入力からフォーカスが削除されているようです。タイミングの問題である可能性があり、qTip2でフォーカスを変更する可能性があります。
ブラウザーが制御を取り戻したら、時間ゼロでaを使用しsetTimeout
て関数をトリガーすることができます(これは、qTip2のすべてが終了した後に発生するはずです)。これは、Chrome、Safari、Firefox、およびOperaで機能します。
events: {
show: function(event, api) {
var $this = $(this);
setTimeout(function() {
$this.find('input.focusselect').focus().select();
}, 0);
}
}
デモ: http: //jsfiddle.net/ambiguous/npZgv/
別のアプローチに興味がある人のために、オートフォーカスイベントを使用するCraig Thompson(qTip作成者)から得た回答を次に示します。
show: {
event: 'click',
ready: true,
solo: true,
autofocus: '.focusselect'
},
events: {
show: function(event, api) {
$('input.focusselect', this).bind('focus', function() {
$(this).select();
});
}
}