2017-03-20 88 views
0

嘗試在svg上顯示引導彈出窗口。設法讓它在Safari和Firefox中工作(尚未測試過Chrome),但無法在IE中運行 - 試過IE11。bootstrap popover在IE11中不起作用

popover的關鍵在於它是通過單擊svg來激發,然後通過單擊popover標題中的x或屏幕上其他位置的任意位置來解除。

我已經設置了一個jsfiddle,它顯示了我想實現的目標。 IT在IE11中不起作用。

<a id="testPopover" tabindex="0" class="popover_wrapper" data-toggle="popover" data-trigger="focus" data-container="body"> 
<svg width="310" height="110"> 
    <rect width="300" height="100" style="fill:rgb(0,0,255);stroke-width:3;stroke:rgb(0,0,0)" /> 
</svg> 
</a> 

https://jsfiddle.net/sregorcinimod/ut56eowb/

+0

可能在IE'focus'一個問題,我敢打賭,它的工作原理與'click'呢? – DavidG

+0

但點擊停止工作 – Dominic

回答

0

好像使用引導V4可能會解決這個問題。正在進行進一步的測試

+0

標題中的x,在v3.37中有一個修復程序解決了我的問題。現在使用v4 – Dominic

0

我會觸發更改爲click,然後代替data-dismiss="popover"(這並不做任何事情),我會做data-dismiss="#testPopover",所以你能具有酥料餅的元素的引用,那麼你可以這樣做:

$("body").on("click", ".popover .close", function(e) { 
    e.preventDefault(); 
    $($(this).data('dismiss')).popover('hide'); 
}) 

https://jsfiddle.net/ut56eowb/13/

+0

這並不能解決我需要的事實:「彈窗的關鍵在於它是通過單擊svg來激發,然後通過點擊彈窗標題中的x或任何地方其他人在屏幕上。「。點擊屏幕上的其他地方什麼也不做。 – Dominic