tooltip.html 5.57 KB
Newer Older
1
<!doctype html>
2
<html lang="en">
Bardi Harborow's avatar
Bardi Harborow committed
3
4
  <head>
    <meta charset="utf-8">
5
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
Bardi Harborow's avatar
Bardi Harborow committed
6
7
    <link rel="stylesheet" href="../../../dist/css/bootstrap.min.css">
    <title>Tooltip</title>
8
9
10
11
12
13
14
15
16
17
18
19
20
    <style>
      #target {
        border: 1px solid;
        width: 100px;
        height: 50px;
        border: 1px solid;
        margin-left: 50px;
        -webkit-transform: rotate(270deg);
        -ms-transform: rotate(270deg);
        transform: rotate(270deg);
        margin-top: 100px;
      }
    </style>
Bardi Harborow's avatar
Bardi Harborow committed
21
22
23
24
  </head>
  <body>
    <div class="container">
      <h1>Tooltip <small>Bootstrap Visual Test</small></h1>
25

Bardi Harborow's avatar
Bardi Harborow committed
26
      <p class="text-muted">Tight pants next level keffiyeh <a href="#" data-toggle="tooltip" title="Default tooltip">you probably</a> haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel <a href="#" data-toggle="tooltip" title="Another tooltip">have a</a> terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A really ironic artisan <a href="#" data-toggle="tooltip" title="Another one here too">whatever keytar</a>, scenester farm-to-table banksy Austin <a href="#" data-toggle="tooltip" title="The last tip!">twitter handle</a> freegan cred raw denim single-origin coffee viral.</p>
27

Bardi Harborow's avatar
Bardi Harborow committed
28
      <hr>
29

30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
      <div class="row">
        <p>
          <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="auto" title="Tooltip on auto">
            Tooltip on auto
          </button>
          <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="top" title="Tooltip on top">
            Tooltip on top
          </button>
          <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
            Tooltip on right
          </button>
          <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="bottom" title="Tooltip on bottom">
            Tooltip on bottom
          </button>
          <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="left" title="Tooltip on left">
            Tooltip on left
          </button>
        </p>
      </div>
      <div class="row">
        <p>
          <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="left" title="Tooltip with XSS" data-container="<img src=1 onerror=alert(123) />">
            Tooltip with XSS
          </button>
54
55
56
57
58
          <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="left" title="Tooltip with container (selector)" data-container="#customContainer">
            Tooltip with container (selector)
          </button>
          <button id="tooltipElement" type="button" class="btn btn-secondary" data-placement="left" title="Tooltip with container (element)">
            Tooltip with container (element)
59
60
61
62
63
64
          </button>
          <button type="button" class="btn btn-secondary" data-toggle="tooltip" data-html="true" title="<em>Tooltip</em> <u>with</u> <b>HTML</b>">
            Tooltip with HTML
          </button>
        </p>
      </div>
65
66
67
68
69
70
      <div class="row">
        <div class="col-sm-3">
          <div id="target" title="Test tooltip on transformed element"></div>
        </div>
        <div id="shadow" class="pt-5"></div>
      </div>
71
      <div id="customContainer"></div>
Bardi Harborow's avatar
Bardi Harborow committed
72
    </div>
73

74
    <script src="../../../node_modules/popper.js/dist/umd/popper.min.js"></script>
Johann-S's avatar
Johann-S committed
75
    <script src="../../dist/util.js"></script>
76
77
    <script src="../../dist/dom/polyfill.js"></script>
    <script src="../../dist/dom/manipulator.js"></script>
78
79
80
    <script src="../../dist/dom/data.js"></script>
    <script src="../../dist/dom/eventHandler.js"></script>
    <script src="../../dist/dom/selectorEngine.js"></script>
Bardi Harborow's avatar
Bardi Harborow committed
81
82
    <script src="../../dist/tooltip.js"></script>
    <script>
83
      document.addEventListener('DOMContentLoaded', function () {
84
        if (typeof document.body.attachShadow === 'function') {
85
          var shadowRoot = document.getElementById('shadow').attachShadow({ mode: 'open' })
86
87
88
89
90
91
92
93
          shadowRoot.innerHTML =
            '<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="top" title="Tooltip on top in a shadow dom">' +
            '  Tooltip on top in a shadow dom' +
            '</button>' +
            '<button id="secondTooltip" type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="top" title="Tooltip on top in a shadow dom with container option">' +
            '  Tooltip on top in a shadow dom' +
            '</button>'

94
95
          var firstChildTooltip = new Tooltip(shadowRoot.firstChild)
          var secondChildTooltip = new Tooltip(shadowRoot.getElementById('secondTooltip'), {
96
97
98
            container: shadowRoot
          })
        }
99
100
101
102
103
104
105
106
107

        document.querySelectorAll('[data-toggle="tooltip"]')
          .forEach(function (tooltip) {
            new Tooltip(tooltip)
          })

        var tooltipElement = document.getElementById('tooltipElement')
        var tooltipElementInstance = new Tooltip(tooltipElement, {
          container: document.getElementById('customContainer')
108
        })
109
110
111

        var target = document.getElementById('target')
        var targetTooltip = new Tooltip(target, {
112
113
          placement : 'top',
          trigger : 'manual'
114
115
        })
        targetTooltip.show()
Bardi Harborow's avatar
Bardi Harborow committed
116
117
118
      })
    </script>
  </body>
119
</html>