我正在嘗試使用html開關更改Bootstrap彈出窗口的觸發器,我設置了一些基本的jQuery,但每次都將每個開關切換到彈出式窗口,但彈出窗口的響應方式不同。點擊更改Bootstrap彈出窗口觸發器
我設置了每個彈出窗口,然後將其放入每次更改觸發器時都可以調用的函數。我將觸發器設置爲全局變量,該變量由在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);
});
這裏是一個codepen鏈接來演示。 https://codepen.io/RobertCC/pen/Qqzwgd
我非常感謝任何幫助!我知道我可能錯過了一些東西。
我不明白你想要達到什麼 – CognitiveDesire
我想問你在問什麼......如何設置一個開關切換來改變Popover機制是否在'click'上被激活而不是'hover'。那是對的嗎? –
是的@Robert C正是我想要做的。儘管如此,我還沒有找到最好的辦法。 –