]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Revert "Allow multiple delegated tooltip selectors on a node" 15466/head
authorChris Rebert <code@rebertia.com>
Tue, 30 Dec 2014 04:03:27 +0000 (20:03 -0800)
committerChris Rebert <code@rebertia.com>
Tue, 30 Dec 2014 04:08:22 +0000 (20:08 -0800)
This reverts commit 1b3237629a316af41945e20837cf3a332798b264.
This reverts PR #14189 because it caused major regressions.

Fixes #15168.

We'll try to revisit #14167's feature request in Bootstrap v4.

[skip validator]

js/popover.js
js/tests/unit/popover.js
js/tests/unit/tooltip.js
js/tooltip.js

index db272bdee412f9a98ef803c476c6671bf31e86c0..3a0bab38ba1521d70dc1f6044327418702aed2c1 100644 (file)
 
   function Plugin(option) {
     return this.each(function () {
-      var $this    = $(this)
-      var data     = $this.data('bs.popover')
-      var options  = typeof option == 'object' && option
-      var selector = options && options.selector
+      var $this   = $(this)
+      var data    = $this.data('bs.popover')
+      var options = typeof option == 'object' && option
 
       if (!data && option == 'destroy') return
-      if (selector) {
-        if (!data) $this.data('bs.popover', (data = {}))
-        if (!data[selector]) data[selector] = new Popover(this, options)
-      } else {
-        if (!data) $this.data('bs.popover', (data = new Popover(this, options)))
-      }
+      if (!data) $this.data('bs.popover', (data = new Popover(this, options)))
       if (typeof option == 'string') data[option]()
     })
   }
index 13ba93862e5bd8268f5fc199ca1993e09488697f..e1a2edef71b7f9b2a9142845bc810d0055484315 100644 (file)
@@ -188,36 +188,6 @@ $(function () {
     equal($('.popover').length, 0, 'popover was removed')
   })
 
-  test('should render popover elements using different delegated selectors on the same node', function () {
-    var popoverHTML = '<div>'
-        + '<a href="#" class="first" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>'
-        + '<a href="#" class="second" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>'
-        + '</div>'
-
-    var $div = $(popoverHTML)
-      .appendTo('#qunit-fixture')
-      .bootstrapPopover({
-        selector: 'a.first',
-        trigger: 'click'
-      })
-      .bootstrapPopover({
-        selector: 'a.second',
-        trigger: 'click'
-      })
-
-    $div.find('a.first').click()
-    notEqual($('.popover').length, 0, 'first popover was inserted')
-
-    $div.find('a.first').click()
-    equal($('.popover').length, 0, 'first popover removed')
-
-    $div.find('a.second').click()
-    notEqual($('.popover').length, 0, 'second popover was inserted')
-
-    $div.find('a.second').click()
-    equal($('.popover').length, 0, 'second popover removed')
-  })
-
   test('should detach popover content rather than removing it so that event handlers are left intact', function () {
     var $content = $('<div class="content-with-handler"><a class="btn btn-warning">Button with event handler</a></div>').appendTo('#qunit-fixture')
 
index eb578c22af3565f7f72efcf89078585670580268..2264ca3727fe851d9cb1a2432987b301f53e6cd2 100644 (file)
@@ -235,37 +235,6 @@ $(function () {
     equal($('.tooltip').length, 0, 'tooltip was removed from dom')
   })
 
-  test('should show tooltips with different delegate selectors on the same node on click', function () {
-    var tooltipHTML = '<div>'
-        + '<a href="#" class="first" rel="tooltip" title="First delegated tooltip"/>'
-        + '<a href="#" class="second" rel="tooltip" title="Second delegated tooltip"/>'
-        + '</div>'
-
-    var $div = $(tooltipHTML)
-      .append()
-      .appendTo('#qunit-fixture')
-      .bootstrapTooltip({
-        selector: 'a.first[rel="tooltip"]',
-        trigger: 'click'
-      })
-      .bootstrapTooltip({
-        selector: 'a.second[rel="tooltip"]',
-        trigger: 'click'
-      })
-
-    $div.find('a.first').click()
-    ok($('.tooltip').is('.fade.in'), 'first tooltip is faded in')
-
-    $div.find('a.first').click()
-    equal($('.tooltip').length, 0, 'first tooltip was removed from dom')
-
-    $div.find('a.second').click()
-    ok($('.tooltip').is('.fade.in'), 'second tooltip is faded in')
-
-    $div.find('a.second').click()
-    equal($('.tooltip').length, 0, 'second tooltip was removed from dom')
-  })
-
   test('should show tooltip when toggle is called', function () {
     $('<a href="#" rel="tooltip" title="tooltip on toggle"/>')
       .appendTo('#qunit-fixture')
index cda147d9c701d42c5cd55105a2a7639ef32d0029..a3bed9856d9165a944efbaca4250974bce318611 100644 (file)
 
   function Plugin(option) {
     return this.each(function () {
-      var $this    = $(this)
-      var data     = $this.data('bs.tooltip')
-      var options  = typeof option == 'object' && option
-      var selector = options && options.selector
+      var $this   = $(this)
+      var data    = $this.data('bs.tooltip')
+      var options = typeof option == 'object' && option
 
       if (!data && option == 'destroy') return
-      if (selector) {
-        if (!data) $this.data('bs.tooltip', (data = {}))
-        if (!data[selector]) data[selector] = new Tooltip(this, options)
-      } else {
-        if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))
-      }
+      if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))
       if (typeof option == 'string') data[option]()
     })
   }