Si desea copiar contenido al portapapeles a través de JS, no es difícil, pero si considera la compatibilidad del navegador, se vuelve un poco problemático. . No explicaré el principio en detalle, hablemos sobre cómo implementarlo.
Por ejemplo, mi código HTML es el siguiente:
La copia del código es la siguiente:
<div>
<código rel = "1"> <span id = "id_1"> contenido que se copiará1 </span> </code>
<código rel = "2"> <span id = "id_2"> contenido que se copiará 2 </span> </code>
<código rel = "3"> <span id = "id_3"> Contenido se copiará3 </span> </code>
</div>
Hay dos archivos JS en total, por lo que no hay necesidad de mencionar jQuery, y luego jQuery-zclip.js y zeroClipboard.swf. /www.steamdev.com/zclip /
Los js que genera el botón de copia son los siguientes
La copia del código es la siguiente:
<script type = "text/javaScript">
$ (function () {
$ ('código'). Cada (function () {
var self = $ (esto);
var id = self.attr ('rel');
var copy = $ ('<span> copy </span>'). appendTo (self) .zclip ({
'ruta': '/static/admin/js/zeroClipboard.swf', // Escribe tu propia dirección aquí
'Aftercopy': functer () {
alerta ('Obtenga la dirección del código correspondiente se ha copiado en el portapapeles, puede usar Ctrl+V para pegar');
},
'Copiar': function () {
return $ ('#id _'+id) .Text (); // Tenga en cuenta aquí, si div span, etc. use text (), si entrada, use val (), este soporte no es muy bueno
}
});
});
});
</script>
De esta manera, puede copiar el tiempo en los navegadores. Más tarde descubrí que Flash se generó en realidad, pero no estaba en la ubicación del texto. Revisé mucha información, y algunas personas dijeron que necesitas cambiar el código, pero luego lo cambié y estuvo bien
El código que debe modificarse es el siguiente
La copia del código es la siguiente:
getDomObjectPosition: function (obj, stopobj) {
// Obtener coordenadas absolutas para el elemento DOM
Var info = {
Izquierda: 0,
Arriba: 0,
Ancho: Obj.Width?
Altura: Obj.
};
if (obj && (obj! = stopobj)) {
//info.left += obj.offsetleft;
//info.top += obj.offsettop;
JPOS = $ (OBJ) .Position ();
info.left += jpos.left;
info.top += jpos.top;
}
Información de retorno;
}
De hecho, esto tiene algo que ver con el principio de este complemento, por lo que cubre un flash transparente en el botón.