diff options
| author | Alexandr Kondrashov <[email protected]> | 2015-12-08 02:18:32 +0300 |
|---|---|---|
| committer | Alexandr Kondrashov <[email protected]> | 2015-12-08 02:18:32 +0300 |
| commit | 5f316e6dc34f57bfbd0ebf922fe5a01cc6bb38c4 (patch) | |
| tree | 2951782d8d0aadb61dae9122d0f508a75ed8e7eb /docs/assets/js/src | |
| parent | c9725926b2f30bed4e37f57c20ef8ffeb2fd233b (diff) | |
| parent | afbaf4350560eaf2135fb0dc6dd761ebb746ac40 (diff) | |
| download | bootstrap-5f316e6dc34f57bfbd0ebf922fe5a01cc6bb38c4.tar.xz bootstrap-5f316e6dc34f57bfbd0ebf922fe5a01cc6bb38c4.zip | |
Merge branch 'v4-dev' of https://github.com/twbs/bootstrap into patch-1
Diffstat (limited to 'docs/assets/js/src')
| -rw-r--r-- | docs/assets/js/src/application.js | 62 |
1 files changed, 26 insertions, 36 deletions
diff --git a/docs/assets/js/src/application.js b/docs/assets/js/src/application.js index 6d3226d9a..1fec20079 100644 --- a/docs/assets/js/src/application.js +++ b/docs/assets/js/src/application.js @@ -9,7 +9,7 @@ * details, see https://creativecommons.org/licenses/by/3.0/. */ -/* global ZeroClipboard, anchors */ +/* global Clipboard, anchors */ !function ($) { 'use strict'; @@ -36,49 +36,39 @@ e.preventDefault() }) - // Config ZeroClipboard - ZeroClipboard.config({ - moviePath: '/assets/flash/ZeroClipboard.swf', - hoverClass: 'btn-clipboard-hover' - }) - // Insert copy to clipboard button before .highlight $('.highlight').each(function () { - var btnHtml = '<div class="zero-clipboard"><span class="btn-clipboard">Copy</span></div>' + var btnHtml = '<div class="bd-clipboard"><span class="btn-clipboard" title="Copy to clipboard">Copy</span></div>' $(this).before(btnHtml) + $('.btn-clipboard').tooltip() + }) + + var clipboard = new Clipboard('.btn-clipboard', { + target: function (trigger) { + return trigger.parentNode.nextElementSibling + } }) - var zeroClipboard = new ZeroClipboard($('.btn-clipboard')) - var $htmlBridge = $('#global-zeroclipboard-html-bridge') - // Handlers for ZeroClipboard - zeroClipboard.on('load', function () { - $htmlBridge - .data('placement', 'top') + clipboard.on('success', function (e) { + $(e.trigger) + .attr('title', 'Copied!') + .tooltip('_fixTitle') + .tooltip('show') .attr('title', 'Copy to clipboard') - .tooltip() - - // Copy to clipboard - zeroClipboard.on('dataRequested', function (client) { - var highlight = $(this).parent().nextAll('.highlight').first() - client.setText(highlight.text()) - }) - - // Notify copy success and reset tooltip title - zeroClipboard.on('complete', function () { - $htmlBridge - .attr('title', 'Copied!') - .tooltip('fixTitle') - .tooltip('show') - .attr('title', 'Copy to clipboard') - .tooltip('fixTitle') - }) + .tooltip('_fixTitle') + + e.clearSelection() }) - // Hide copy button when no Flash is found - // or wrong Flash version is present - zeroClipboard.on('noflash wrongflash', function () { - $('.zero-clipboard').remove() - ZeroClipboard.destroy() + clipboard.on('error', function (e) { + var fallbackMsg = /Mac/i.test(navigator.userAgent) ? 'Press \u2318 to copy' : 'Press Ctrl-C to copy' + + $(e.trigger) + .attr('title', fallbackMsg) + .tooltip('_fixTitle') + .tooltip('show') + .attr('title', 'Copy to clipboard') + .tooltip('_fixTitle') }) }) |
