Thực ra với nhiều người thì nó không cần thiết mấy, tuy nhiên khi có thêm tooltips người dùng sẽ biết được kết quả của việc click vào nút copy sẽ như nào đồng thời cũng tăng tính chuyên nghiệp cho blog của bạn
Bạn có thể test demo bằng cách click chuột vào đây Copy
Hoặc xem demo
Ok thấy thích rồi phải không, bắt tay vào làm nhé ! Do tiện ích clipboard.js không hỗ trợ tooltips nên bạn cần đến bootstrap để hiển thị nó.
Trước tiên hãy đăng nhập vào trang quản trị blog và chỉnh sửa HTML.
B1. Bạn kiểm tra xem trong blog mình đã có jquery, bootstrap js, bootstrap css, clipboard js hay chưa, nếu chưa có file nào thì nhúng file đó vào, đặt link nhúng trước thẻ</head>
<script src='https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js' type='text/javascript'/> <script src='https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js' type='text/javascript'/> <script src='https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js' type='text/javascript'/> <link href='https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css' rel='stylesheet' type='text/css'/>
B2. Tiếp theo dán đoạn code sau trước thẻ đóng </body>
<script type='text/javascript'> //<![CDATA[ $(function() { new Clipboard('.btn-primary'); }); $('.btn-primary').tooltip({ trigger: 'click', placement: 'top' }); function setTooltip(message) { $('.btn-primary').tooltip('hide') .attr('data-original-title', message) .tooltip('show'); } function hideTooltip() { setTimeout(function() { $('.btn-primary').tooltip('hide'); }, 1000); } var clipboard = new Clipboard('.btn-primary'); clipboard.on('success', function(e) { setTooltip('Copied'); hideTooltip(); }); clipboard.on('error', function(e) { setTooltip('Failed'); hideTooltip(); }); // ]]> </script>
B3. Như vậy khi có bài viết cần nút copy, bạn chỉ cần dùng button sau
<button class="btn btn-primary" data-clipboard-target="#page1">COPY</button>
Thay data-clipboard-target="#page1" bằng id hoặc class khung chứa nội dung cần copy. Bạn lưu ý đoạn js ở bước 2 và class của button ở bước 3 (.btn-primary) phải trùng nhau, nếu blog của bạn đã tồn tại class đó, hãy thay bằng tên khác tránh xung đột.
Nội dung setTooltip('Copied'); hoặc setTooltip('Failed'); bạn có thể thay đổi tùy thích
Nội dung placement: 'top' có thể thay thành {left, right, bottom} để định vị trí hiển thị của tooltips
Cập nhật: Từ phiên bản 2.0.0 bạn cần thay phần new Clipboard("...") thành new ClipboardJS("...") để gọi đúng hàm nhé
Chúc bạn thành công !
1. Không vi phạm luật pháp nước CHXHCN Việt Nam
2. Không vi phạm thuần phong mỹ tục Việt Nam
3. Không bàn luận vấn đề liên quan đến tôn giáo, chính trị
4. Không đả kích, chửi bới hay đưa ra những lời nói không phù hợp với mục tiêu của website
5. Không bình luận với mục đích quảng cáo, trao đổi, mua bán
6. Khuyến khích sử dụng Tiếng Việt có dấu, hạn chế sử dụng tiếng lóng, viết tắt
7. Khi cần sự trợ giúp, vui lòng miêu tả chi tiết lỗi và để lại link đính kèm, tránh nói chung chung gây mất thời gian cho đôi bên