mirror of
https://github.com/twbs/bootstrap.git
synced 2024-11-29 11:24:18 +01:00
Make "Copy" buttons actual buttons
This makes them keyboard-accessible. For mouse users, the only change here is that the focus outline will remain on the button once clicked (in future, this can be solved with :focus-ring, but for now this would require a polyfill). the tooltip is explicitly hidden on `mouseleave`, so even though the `<button>` retains focus after clicking, the tooltip won't stay visible once mouse user moves away. the mouse hover styles have explicitly not been make to also apply to :focus, so as to minimise the visual impact for mouse users (though the tooltip remains visible) - but due to the default outline and the custom tooltip, it should be fairly clear when keyboard users set focus to a copy button too.
This commit is contained in:
parent
bc0cf36dc8
commit
ea1d69c64b
@ -55,9 +55,16 @@
|
|||||||
|
|
||||||
// Insert copy to clipboard button before .highlight
|
// Insert copy to clipboard button before .highlight
|
||||||
$('.highlight').each(function () {
|
$('.highlight').each(function () {
|
||||||
var btnHtml = '<div class="bd-clipboard"><span class="btn-clipboard" title="Copy to clipboard">Copy</span></div>'
|
var btnHtml = '<div class="bd-clipboard"><button class="btn-clipboard" title="Copy to clipboard">Copy</button></div>'
|
||||||
$(this).before(btnHtml)
|
$(this).before(btnHtml)
|
||||||
$('.btn-clipboard').tooltip()
|
$('.btn-clipboard')
|
||||||
|
.tooltip()
|
||||||
|
.on('mouseleave', function () {
|
||||||
|
// explicitly hide tooltip, since after clicking it remains
|
||||||
|
// focused (as it's a button), so tooltip would otherwise
|
||||||
|
// remain visible until focus is moved away
|
||||||
|
$(this).tooltip('hide')
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
var clipboard = new Clipboard('.btn-clipboard', {
|
var clipboard = new Clipboard('.btn-clipboard', {
|
||||||
|
@ -23,6 +23,7 @@
|
|||||||
color: #818a91;
|
color: #818a91;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
|
border: 0;
|
||||||
border-radius: .25rem;
|
border-radius: .25rem;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
|
Loading…
Reference in New Issue
Block a user