2016-12-15 89 views
0

我使用的引導popovers使用。不是()與引導酥料餅

$('[data-toggle=popover]').popover(); 

我需要修改這個代碼,以防止啓動酥料餅,如果該元素具有一定的數據屬性。

$('[data-toggle=popover]').not('[data-nopopover=1]').popover(); 

出於某種原因,酥料餅仍然被觸發,即使數據屬性存在。

HTML

<span data-container="body" data-toggle="popover" data-placement="right" data-html="true" data-content="popover content" aria-hidden="true" data-original-title="" title=""></span> 

我缺少什麼?

+0

會發生什麼,如果你只是做'。不是(「[數據nopopover]」)'?沒有「= 1」。 –

+0

它仍然是它...我不知道是否是因爲我動態添加數據屬性。也許我需要以某種方式合併.on()。 – santa

+0

你能發表你正在使用的HTML代碼嗎? –

回答

1

如果您綁定的酥料餅具有data-toggle=popover你需要摧毀的酥料餅的不應該表現出酥料餅的元素的所有元素。調用$('[data-toggle=popover]').not('[data-nopopover=1]').popover();只會嘗試初始化上不再具有data-nopopover屬性的元素酥料餅。具有data-nopopover的元素仍將附加彈出窗口。 你應該撥打電話$('[data-nopopover=1]').popover('destroy');

如果你只綁定一次元素,這取決於你如何設置data-nopopover。它需要設置是這樣的:$('your-selector').attr('data-nopopover', "1"); $('[data-toggle=popover]').not('[data-nopopover=1]').popover();

我創建了一個小提琴,你可以玩:https://jsfiddle.net/vo1npqdx/72/