私はブートストラップポップオーバーを使用しており、ユーザーが言語を変更できるようにポップオーバーの内側に<select>
フィールドを持っています。Bootstrap3 popover data-trigger =ポップアップ内で<select>入力をクリックするとフォーカスが閉じるポップアップ
ポップオーバーの外側をクリックすると消えてしまいますので、これを達成するために<a>
タグ内のdata-trigger="focus"
属性を使用しています。
しかし、<select>
ドロップダウンメニューをクリックすると、言語をクリックする前にポップオーバーが消えます。
以下は参照用のブーツです。どんな助けでも大歓迎です。
http://www.bootply.com/SEM4ophIhx
Javascriptを:
$(function() {
$('[data-toggle="popover"]').popover()
})
$(function() {
$('[rel="popover"]').popover({
container: 'body',
html: true,
content: function() {
var clone = $($(this).data('popover-content')).clone(true).removeClass('hide');
return clone;
}
}).click(function (e) {
e.preventDefault();
});
});
HTML:
<a href="#" role="button" data-placement="right" data-trigger="focus" rel="popover" data-popover-content="#profilesettingsaction">
<span class="glyphicon glyphicon-cog"></span>
</a>
<div id="profilesettingsaction" class="hide">
<ul>
<li>
<select name="language">
<option value="">العربية: الإمارات العربية المتحدة</option>
<option value="">中国</option>
<option value="">中國</option>
<option value="">Nederlands: Nederland</option>
<option value="">English: United Kingdom</option>
<option value="" selected="">Language: English</option>
<option value="">Français: France</option>
<option value="">Italiano: l'Italia</option>
<option value="">日本語:日本</option>
<option value="">Português: Portugal</option>
<option value="">Español: México</option>
</select>
</li>
</ul>
</div>
ありがとう、これは素晴らしい情報ですが、まだドロップダウンから言語を選択できるうちに、ユーザーがポップオーバーの外をクリックして離れることができるようにしたいと考えています。 ユーザーが言語をクリックすると、新しいコピーが表示されるようにページがリロードされますが、それと同時にポップアップが折りたたまれます。 この問題は同じ問題を抱えています - http://stackoverflow.com/questions/27648587/how-to-prevent-the-popover-div-for-hiding-on-clicking-inside-it-for-twitter-ブート –
は現時点では不可能だと思われますが、私は多くのパスを試しましたが、JQueryコードで同様のことを実装してカスタム動作をプログラムできます。 – theCodeSurgeon
ありがとう、あまりにもたくさんのことを試して、私は以前コミュニティが経験したことがないと思っていました。 –