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
此错误似乎表示剪贴板是完整的。无论如何,它是完整的。
如何将代码示例复制到剪贴板?
答案 0 :(得分:1)
使用以下JavaScript代码并在div中添加要复制的内容id =“ mytext”按钮添加按钮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>