繁体   English   中英

复制到剪贴板

[英]Copy to clipboard

html

<pre class="code"><code >from django.db import models</code>
<code >from general.model_mixins import TitleMixin, CommentMixin, BodyMixin</code>
<code >from hyper_link.models import HyperLink</code>
<code ></code>
<code ></code>
<code class="breakpoint">class CodeTypes(CommentMixin, models.Model):</code>
<code >    code_type = models.CharField(max_length=100,</code>
<code >                                 verbose_name="Тип программного кода (Python, HTML, JSON и т.п.)")</code>
<code ></code>
<code >    def __str__(self):</code>
<code >        return self.code_type</code>
<code class="breakpoint"></code>
<code >    class Meta:</code>
<code >        verbose_name = "Тип кода"</code>
<code ></code>
<code ></code>
<code >class CodeSample(TitleMixin,</code>
<code >                 CommentMixin,</code>
<code >                 BodyMixin,</code>
<code >                 models.Model):</code>
<code ></code>
<code >    breakpoints = models.CharField(default="",</code>
<code >                                   max_length=100,</code>
<code >                                   blank=True,</code>
<code >                                   verbose_name="Строки с точками остановки через запятую")</code>
<code >    code_type = models.ForeignKey(CodeTypes,</code>
<code >                                 on_delete=models.PROTECT,</code>
<code >                                 verbose_name="Тип программного кода (Python, HTML, JSON и т.п.)")</code>
<code ></code>
<code >    hiperlink = models.ForeignKey(HyperLink,</code>
<code >                                  on_delete=models.PROTECT,</code>
<code >                                  blank=True,</code>
<code >                                  null=True,</code>
<code >                                  verbose_name="Ссылка")</code>
<code ></code>
<code >    class Meta:</code>
<code >        verbose_name = "Программный код"</code>
</pre>
<button class="code-sample-button">Копировать</button></div><!--.code-sample-->

js

function copy_code_sample($button){
    var $code = $($button.siblings(".code")[0]);
    $code.select();
    document.execCommand('copy');
}

任务

这个想法是复制编程代码(当然没有任何 html 标签)。 可以使用jQuery。

我的代码不起作用。

document.execCommand('copy');
false

这个错误似乎意味着剪贴板是完整的。 无论如何,它完好无损。

如何将代码示例复制到剪贴板?

使用下面的 JavaScript 代码并在 div id="mytext" 按钮中添加要复制的内容 add button id="TextToCopy" onclick="copy_function('mytext')"

 function copy_function(id){ var value = document.getElementById(id).innerHTML; var input_temp = document.createElement("input"); input_temp.value = value; document.body.appendChild(input_temp); input_temp.select(); document.execCommand("copy"); document.body.removeChild(input_temp); };
 <div id="mytext"><pre class="code"><code >from django.db import models</code> <code >from general.model_mixins import TitleMixin, CommentMixin, BodyMixin</code> <code >from hyper_link.models import HyperLink</code> <code ></code> <code ></code> <code class="breakpoint">class CodeTypes(CommentMixin, models.Model):</code> <code > code_type = models.CharField(max_length=100,</code> <code > verbose_name="Тип программного кода (Python, HTML, JSON и т.п.)")</code> <code ></code> <code > def __str__(self):</code> <code > return self.code_type</code> <code class="breakpoint"></code> <code > class Meta:</code> <code > verbose_name = "Тип кода"</code> <code ></code> <code ></code> <code >class CodeSample(TitleMixin,</code> <code > CommentMixin,</code> <code > BodyMixin,</code> <code > models.Model):</code> <code ></code> <code > breakpoints = models.CharField(default="",</code> <code > max_length=100,</code> <code > blank=True,</code> <code > verbose_name="Строки с точками остановки через запятую")</code> <code > code_type = models.ForeignKey(CodeTypes,</code> <code > on_delete=models.PROTECT,</code> <code > verbose_name="Тип программного кода (Python, HTML, JSON и т.п.)")</code> <code ></code> <code > hiperlink = models.ForeignKey(HyperLink,</code> <code > on_delete=models.PROTECT,</code> <code > blank=True,</code> <code > null=True,</code> <code > verbose_name="Ссылка")</code> <code ></code> <code > class Meta:</code> <code > verbose_name = "Программный код"</code> </pre></div> <button id="TextToCopy" onclick="copy_function('mytext')">Копировать</button>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM