用clipboard做复制文本的功能代码

代码如下:

<input id="foo" value="这里是内容">
<button class="btn" data-clipboard-target="#foo">点击复制</button>
<script src="dist/clipboard.min.js"></script>
<script>
    new Clipboard('.btn');//首先需要您需要通过传递DOM选择器,HTML元素或HTML元素列表来实例化它。
<script>

如果要添加事件,可以这样:

<input id="foo" value="这里是内容">
<button class="btn" data-clipboard-target="#foo">点击复制</button>
<script src="dist/clipboard.min.js"></script>
<script>
    var clipboard = new Clipboard('.btn');
    clipboard.on('success', function(e) {
        alert("复制成功!");
        e.clearSelection();
    });
    clipboard.on('error', function(e) {
        alert("复制失败!");
    });
<script>

另一方式:

window.copyToClipboard = function(text) {
  // IE specific
  if (window.clipboardData && window.clipboardData.setData) {
    return clipboardData.setData("Text", text);
  }

  // all other modern
  target = document.createElement("textarea");
  target.style.position = "absolute";
  target.style.left = "-9999px";
  target.style.top = "0";
  target.textContent = text;
  document.body.appendChild(target);
  target.focus();
  target.setSelectionRange(0, target.value.length);

  // copy the selection of fall back to prompt
  try {
    document.execCommand("copy");
    target.remove();
    console.log('Copied to clipboard: "'+text+'"');
  } catch(e) {
    console.log("Can't copy string on this browser. Try to use Chrome, Firefox or Opera.")
    window.prompt("Copy to clipboard: Ctrl+C, Enter", text);
  }
}

 

以下是Java Swing中实现文本复制粘贴功能的示例代码: ```java import java.awt.*; import java.awt.datatransfer.*; import java.awt.event.*; import javax.swing.*; public class TextCopyPasteExample extends JFrame { private JTextArea textArea; private JPopupMenu popupMenu; private JMenuItem copyItem; private JMenuItem pasteItem; public TextCopyPasteExample() { // 创建文本区域 textArea = new JTextArea(); JScrollPane scrollPane = new JScrollPane(textArea); getContentPane().add(scrollPane, BorderLayout.CENTER); // 创建弹出菜单 popupMenu = new JPopupMenu(); copyItem = new JMenuItem("复制"); pasteItem = new JMenuItem("粘贴"); popupMenu.add(copyItem); popupMenu.add(pasteItem); // 添加菜单项的事件监听器 copyItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { copyText(); } }); pasteItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { pasteText(); } }); // 添加弹出菜单的触发器 textArea.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { showPopupMenu(e); } public void mouseReleased(MouseEvent e) { showPopupMenu(e); } }); // 设置窗口属性 setTitle("文本复制粘贴示例"); setSize(400, 300); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); } // 显示弹出菜单 private void showPopupMenu(MouseEvent e) { if (e.isPopupTrigger()) { popupMenu.show(e.getComponent(), e.getX(), e.getY()); } } // 复制文本到剪切板 private void copyText() { StringSelection selection = new StringSelection(textArea.getSelectedText()); Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); clipboard.setContents(selection, null); } // 从剪切板粘贴文本 private void pasteText() { Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); Transferable contents = clipboard.getContents(null); if (contents != null && contents.isDataFlavorSupported(DataFlavor.stringFlavor)) { try { String text = (String) contents.getTransferData(DataFlavor.stringFlavor); textArea.replaceSelection(text); } catch (Exception ex) { ex.printStackTrace(); } } } public static void main(String[] args) { new TextCopyPasteExample(); } } ``` 该示例中创建了一个JFrame窗口,并在其中添加了一个JTextArea文本区域,通过添加鼠标事件监听器,在鼠标右键点击时弹出复制粘贴的弹出菜单。在复制和粘贴的方法中,通过Java提供的Clipboard类和Transferable接口实现将文本复制到剪切板和从剪切板中粘贴文本功能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值