htmlスイッチを使用してBootstrapポップオーバーのトリガーを変更しようとしていますが、基本的なjQueryを設定していますが、クリック時のブートストラップPopoverトリガーの変更
私はそれぞれのポップオーバーを設定し、トリガーを変更するたびに呼び出すことができる関数に入れます。私はトリガをhtmlスイッチの変更で実行される関数によって変更されるグローバル変数として設定しています。
ここは私のjqueryです.HTMLはcodepenリンクにあります。
jQuery(document).ready(function ($) {
var click_funct = 'hover';
$(".nrl-hint").contents().find(":checkbox").bind('change', function(){
var check_checked = $('#nrl-hint').is(":checked");
if (check_checked) {
console.log("Check ran");
click_funct = 'click';
$("[data-toggle=popover]").popover('destroy');
$("[data-toggle=popover_2]").popover('destroy');
$("[data-toggle=popover_3]").popover('destroy');
$("[data-toggle=popover_4]").popover('destroy');
$("[data-toggle=popover_5]").popover('destroy');
box_funct(click_funct);
}
else {
console.log('Check ran x2');
click_funct = 'hover';
$("[data-toggle=popover]").popover('destroy');
$("[data-toggle=popover_2]").popover('destroy');
$("[data-toggle=popover_3]").popover('destroy');
$("[data-toggle=popover_4]").popover('destroy');
$("[data-toggle=popover_5]").popover('destroy');
box_funct(click_funct);
}
});
function box_funct(click_funct) {
$(".ow-button-hover").attr("href", "javascript:void(0)");
$('.ow-button-hover').popover({
html : true,
trigger : 'click',
placement: "top",
content: function() {
return $('#contact_form_nrl').html();
},
template: '<div class="popover nrl-popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
});
$('[data-toggle=popover]').popover({
html : true,
trigger : click_funct,
content: function() {
return $('#popover_content_wrapper').html();
},
template: '<div class="popover nrl-popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
});
$('[data-toggle=popover_2]').popover({
html : true,
trigger : click_funct,
content: function() {
return $('#popover_content_wrapper_2').html();
},
template: '<div class="popover nrl-popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
});
$('[data-toggle=popover_3]').popover({
html : true,
trigger : click_funct,
placement : 'left',
content: function() {
return $('#popover_content_wrapper_3').html();
},
template: '<div class="popover nrl-popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
});
$('[data-toggle=popover_4]').popover({
html : true,
trigger : click_funct,
placement : 'right',
content: function() {
return $('#popover_content_wrapper_4').html();
},
template: '<div class="popover nrl-popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
});
$('[data-toggle=popover_5]').popover({
html : true,
trigger : click_funct,
placement : 'right',
content: function() {
return $('#popover_content_wrapper_5').html();
},
template: '<div class="popover nrl-popover-2"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
});
}
box_funct(click_funct);
});
ここにデモするコードダイリンクがあります。 https://codepen.io/RobertCC/pen/Qqzwgd
大変ありがとうございます。私はおそらく何かが足りないことを知っている。
私はあなたが達成しようとしていることを理解していません – CognitiveDesire
私は、あなたが求めていることを考えています...ポップオーバーメカニックが「クリック」と「オン」のどちらでアクティブになるかを変えるスイッチトグルを設定する方法'ホバー'。あれは正しいですか? –
はい@Robert Cはまさに私がやろうとしていることです。私はまだそれを行うための最善の方法を見つけていない。 –