передача асинхронных данных о событиях из Javascript в представление Django

Вы инициализировали все элементы, которые имеют атрибут data-toggle="tooltip", используя делегирование контейнера элементов (тела) ( fiddle ):

$("body").tooltip({ selector: '[data-toggle=tooltip]' });

, поэтому для того, чтобы отключите его, используя уничтожить, вам нужно сделать это на теле:

$('body').tooltip('dispose');

Если вы хотите сделать это без делегирования, вы можете инициализировать каждый из элементов ( скрипт ):

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

и уничтожить его:

$('[data-toggle="tooltip"]').tooltip('dispose'); // used in v4
$('[data-toggle="tooltip"]').tooltip('destroy'); // used in v3 and older

Если вы все еще хотите инициализировать делегирование корыта и остановить его от работы с помощью disable ( скрипт ):

$('body').tooltip({ selector: '[data-toggle=tooltip]' });
$('body [data-toggle="tooltip"]').tooltip('disable');

Объяснение о различии между уничтожением и отключением, взятым из Ответ Жасни :

$('[rel=tooltip]').tooltip()          // Init tooltips
$('[rel=tooltip]').tooltip('disable') // Disable tooltips
$('[rel=tooltip]').tooltip('enable')  // (Re-)enable tooltips
$('[rel=tooltip]').tooltip('dispose') // Hide and destroy tooltips

Это ответ, который я получил в Bootstraps github - Поскольку вы используете делегирование (т. е. вариант селектора), я считаю, что есть только один экземпляр всплывающей подсказки (на теле). Таким образом, попытка уничтожения несуществующих экземпляров всплывающих подсказок на самих элементах триггера не влияет. Сравните не делегированную версию: http://jsfiddle.net/zsb9h3g5/1/

0
задан Daniel Roseman 15 January 2019 в 14:46
поделиться