Ограничить всплывающую подсказку для запуска на всех страницах
Как я могу убедиться, что моя функция всплывающей подсказки не должна срабатывать на всех страницах, а также найти подсказку на тех страницах, где у меня нет всплывающей подсказки, и в конце концов выдать ошибку в консоли, говоря:
master.js$('[data-toggle="tooltip"]').tooltip();
HTML<i class="fa fa-info-circle" data-toggle="tooltip" data-placement="bottom" title="Sample Tip"></i>
Ошибка на страницах без тега подсказки
Uncaught TypeError: $(...). Подсказка не является функцией
В настоящее время я добавил этот код в мастер JS, на который ссылаются на всех страницах
2 ответа
В вашем master.js просто проверьте, если tooltip()
существует до вызова этого:
if ($.fn.tooltip) {
$('[data-toggle="tooltip"]').tooltip();
}
Я не уверен, что правильно понял ваш вопрос,
Одна вещь, которую я мог бы попробовать, это добавить класс на страницы, где вы не хотите, чтобы показывались подсказки, а затем уничтожить эти подсказки, т.е.
<body class="no-tooltip"> ...
<script>$('body.no-tooltip').tooltip('destroy')</script>
Другой, и, возможно, лучший вариант, это перевернуть его, и в вашем файле master.js вызвать всплывающую подсказку () только на страницах, которые имеют это <body class="hastooltip">
и вместо тебя орг функции используй
$(function () {
$('body.hastooltip [data-toggle="tooltip"]').tooltip()
})