2015-10-01 6 views
3

Я создал угловую директиву для всплывающей подсказки jquery.JQuery Tooltip не работает с bootstrap js

angular.module("app", []).directive("tooltip", function(){ 
    return { 
     restrict: "A", 
     scope:{ 
      title: "@", 
      template: "@" 
     }, 
     link: function(scope, element){ 
      $(element).tooltip({ 
       title: scope.title, 
       tooltipClass: scope.template 
      }); 
     } 
    } 
}) 

Demo-1 is here и работает. (Не ссылочные bootstrap.js пока)

Но если я использую bootstrap.js на мой проект, он не работает.

Demo-2 is here и не работает. (Я ссылался на bootstrap.js)

+4

[jsFiddle] (http://jsfiddle.net/taleebanwar/ 5qjae1k2/4 /) ... похоже, что ответ Shashank правильный – Taleeb

+0

Nice '* + 1 *' @Taleeb – vivekkupadhyay

ответ

0

Bootstrap.js также имеет функцию tooltip с именем tooltip. Таким образом, он переопределяет функцию tooltip функции jQuery UI tooltip.

Если вам нужно использовать оба jQuery UI и Bootstrap, но вам нужна подсказка интерфейса jQuery, просто добавьте bootstrap.min.js до jquery-ui.min.js.

+1

Этот ответ верный. Если у нас есть две функции с одним и тем же именем (в js), то тот, который находится в конце, вызывается ... См. Это [jsFiddle] (http://jsfiddle.net/taleebanwar/5qjae1k2/4/) для вышеуказанного ответа – Taleeb

+0

Вот разветвленная версия вашего второго примера, которая работает http://jsfiddle.net/8h7aa4ok/ после замены позиций 'bootstrap.js' и' jquery-ui.js' –

+0

У меня есть небольшая проблема, стрелки всплывающей подсказки не появляется. – barteloma

0

Просто за головы, Demo-2 работает: added position relativehere

Просто в-случае, если вы хотите использовать его: tooltip options

Смежные вопросы