clipboard: removed jquery

this was an unsuccessful attempt to fix  but as we want to get rid
of jQuery in the long run anyways, we keep this change
This commit is contained in:
Sören Weber 2022-03-25 15:35:19 +01:00
parent e4e6e2d187
commit 8c7896af4c
No known key found for this signature in database
GPG key ID: 07D17FF580AE7589

View file

@ -95,19 +95,22 @@ function initMermaid() {
} }
function initAnchorClipboard(){ function initAnchorClipboard(){
var clip = new ClipboardJS('.anchor'); document.querySelectorAll( 'h1~h2,h1~h3,h1~h4,h1~h5,h1~h6').forEach( function( element ){
$("h1~h2,h1~h3,h1~h4,h1~h5,h1~h6").append(function(index, html){
var element = $(this);
var url = encodeURI(document.location.origin + document.location.pathname); var url = encodeURI(document.location.origin + document.location.pathname);
var link = url + "#"+element[0].id; var link = url + "#"+element.id;
var html = " " + $( '<span>' ).addClass("anchor").attr("title", window.T_Copy_link_to_clipboard).attr("data-clipboard-text", link).append("<i class='fas fa-link fa-lg'></i>").get(0).outerHTML; var new_element = document.createElement( 'span' );
return html; new_element.classList.add( 'anchor' );
new_element.setAttribute( 'title', window.T_Copy_link_to_clipboard );
new_element.setAttribute( 'data-clipboard-text', link );
new_element.innerHTML = '<i class="fas fa-link fa-lg"></i>';
element.append( new_element );
}); });
$(".anchor").on('mouseleave', function(e) { $(".anchor").on('mouseleave', function(e) {
$(this).attr('aria-label', null).removeClass('tooltipped tooltipped-s tooltipped-w'); $(this).attr('aria-label', null).removeClass('tooltipped tooltipped-s tooltipped-w');
}); });
var clip = new ClipboardJS('.anchor');
clip.on('success', function(e) { clip.on('success', function(e) {
e.clearSelection(); e.clearSelection();
$(e.trigger).attr('aria-label', window.T_Link_copied_to_clipboard).addClass('tooltipped tooltipped-s'); $(e.trigger).attr('aria-label', window.T_Link_copied_to_clipboard).addClass('tooltipped tooltipped-s');