Rumah hujung hadapan web tutorial js javaScript复制功能调用实现方案_基础知识

javaScript复制功能调用实现方案_基础知识

May 16, 2016 pm 05:46 PM
panggilan

复制代码 代码如下:

验证码:



最近都没有什心情去写博文,主要因为心烦的事情渐渐多起来了。
哎!离题了,回到这篇文章了。说到使用js实现点击复制的功能,我下面想说的方法也是和网上的大同小异的。js实现是很简单,最难的是兼容问题,毕竟用IE以外的人还是有很多的。这里,我也是根据网上的相关资源总结一下方法。

方法一,逐一判别处理法
方法很简单也很容易懂,就是通过判断客户端浏览器类别,来执行不同的js代码来实现复制功能。虽然从理论上来说,这样是行得通得。但是,事实并没有我们想得那么容易。因为我们并不太清楚一些浏览器下js复制代码的写法,至少我所知道的也就是IE和FF。

如果只是兼容IE和FF的话,那么简单得多了。这里我使用一个网上比较有名的判断IE核的方法,13字节法,这个也是我常用的。
复制代码 代码如下:

if("\v"=="v") {//13个字节
//这里是IE核,执行的代码,亲测兼容IE8
}else{
//非IE核执行代码
}

这里我写个大概的实现复制的构架,具体代码我不粘上来的,网上可以很简单就找到,给大家参考
复制代码 代码如下:

function clipBoard(object){
//获取object的值,即复制内容
var copyTxt=document.getElementById(object).value;
//调用copy2Clipboar来实现浏览器,判断及执行代码
if(copy2Clipboard(copyTxt)!= false){
alert('复制成功');
}
}
copy2Clipboard = function(txt){
if("\v"=="v"){
//IE浏览器执行代码
window.clipboardData.clearData();
window.clipboardData.setData("Text",txt);
return true;
}else if(navigator.userAgent.indexOf("Firefox")>0){
//Firefox浏览器
return true;
}else if(window.google && window.chrome){
//chrome浏览器
return true;
}else{
alert("浏览器不支持");
return false;
}
}

根据需要可以自行添加不同的判断浏览器代码,实现该浏览器下的复制功能。一般情况下,根据IE > FF > opera/chrome>其他,这样的顺序进行判断。

方法二,flash间接处理法
原理很简单,通过创建一个flash,将复制的内容以变量的方式传递给flash,flash再将内容复制到内存中,这样就实现了复制的功能。只要支持flash,按理上是可以兼容绝大部分的浏览器的,这个方法是我今天看到的,也测试验证了。

安装及使用方法,可以在上面两个网址上找到,E文版,中文版只有通过搜索去找咯!
这里我提供一下实现框架的简单版,这里有用到上面的实现方式。这里有修改的,根据官方版说明方法,在单页面很容易就能实现该功能,但是在实际应用到某些CMS中,可能会遇到一些问题。什么问题呢?IE核页面会弹出 “该页面已终止”。原因很简单,就是js加载未完成就调用。竟然是IE的问题,那么我们就可以使用判断IE的方法,将IE独立出来,其他核就使用flash方法实现。
复制代码 代码如下:

function checkClient(object){//判断浏览器
var copyTxt=document.getElementById(object).value; //获取复制的内容
if("v"!="v"){
//这里根据官方文档设置
//这里设置flash位置,绝对相对都可以
ZeroClipboard.setMoviePath('ZeroClipboard.swf');
//创建一个复制对象
var clip = new ZeroClipboard.Client();
//设置手形
clip.setHandCursor(true);
//设置复制的内容
clip.setText(copyTxt);
//设置触发对象
>clip.glue('d_clip_button');
}
}

这里用于判断是否为IE核,IE核将不使用flash处理法,直接使用复制机制
复制代码 代码如下:

//复制处理
function clipBoard(object){
var copyTxt=document.getElementById(object).value;
if(copy2Clipboard(copyTxt)!= false){
alert('复制成功');
}
}
copy2Clipboard = function(txt){
if("\v"=="v") { //判断是否是IE浏览器
window.clipboardData.clearData();
window.clipboardData.setData("Text",txt);
return true;
}
else{ //非IE核直接返回
return true;
}

以上为第二种方法的最简单设置方法,将代码放到之间即可不管是第一种,还是第二种方法都要在需要复制的页面上添加下面两行代码
设置复制内容的文本域
复制代码 代码如下:

onmouseout="checkClient('textinfo')" value="复制的内容" size="65"/>

设置触发对象按钮
复制代码 代码如下:

复制地址


这是第二种方法才要添加的,设置检测浏览器
复制代码 代码如下:

<script>checkClient('textinfo');</script>

写到这里,大概的步骤就是这样了,其中还有些id的名称可以按需要修改。至少完整代码,可以参考官方的demo。
累了。
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk menggunakan Python untuk memanggil API Peta Baidu untuk melaksanakan fungsi pertanyaan lokasi geografi? Bagaimana untuk menggunakan Python untuk memanggil API Peta Baidu untuk melaksanakan fungsi pertanyaan lokasi geografi? Jul 31, 2023 pm 03:01 PM

Bagaimana untuk menggunakan Python untuk memanggil API Peta Baidu untuk melaksanakan fungsi pertanyaan lokasi geografi? Dengan perkembangan Internet, pemerolehan dan penggunaan maklumat lokasi geografi menjadi semakin penting. Peta Baidu ialah aplikasi peta yang sangat biasa dan praktikal yang menyediakan pelbagai perkhidmatan pertanyaan lokasi geografi. Artikel ini akan memperkenalkan cara menggunakan Python untuk memanggil API Peta Baidu untuk melaksanakan fungsi pertanyaan lokasi geografi dan melampirkan contoh kod. Mohon akaun pembangun Baidu Map dan aplikasi Pertama, anda perlu mempunyai akaun pembangun Baidu Map dan buat aplikasi. Log masuk

Penerokaan kod sumber: Bagaimanakah objek dipanggil dalam Python? Penerokaan kod sumber: Bagaimanakah objek dipanggil dalam Python? May 11, 2023 am 11:46 AM

Wedge Kita tahu bahawa objek dicipta dalam dua cara utama, satu adalah melalui Python/CAPI, dan satu lagi adalah dengan memanggil objek jenis. Contohnya objek jenis terbina dalam, kedua-dua kaedah disokong Contohnya, senarai boleh dibuat melalui [] atau list(). Tetapi sebagai contoh objek kelas tersuai, kita hanya boleh menciptanya dengan memanggil objek jenis. Jika objek boleh dipanggil, maka objek itu boleh dipanggil, jika tidak, ia tidak boleh dipanggil. Menentukan sama ada objek boleh dipanggil bergantung pada sama ada kaedah ditakrifkan dalam objek jenis sepadannya. suka

Kemahiran panggilan kamera PHP: Bagaimana untuk melaksanakan penukaran berbilang kamera Kemahiran panggilan kamera PHP: Bagaimana untuk melaksanakan penukaran berbilang kamera Aug 04, 2023 pm 07:07 PM

Kemahiran panggilan kamera PHP: Cara menukar antara berbilang kamera aplikasi kamera telah menjadi bahagian penting dalam banyak aplikasi web, seperti persidangan video, pemantauan masa nyata, dsb. Dalam PHP, kita boleh menggunakan pelbagai teknologi untuk memanggil dan mengendalikan kamera. Artikel ini akan menumpukan pada cara melaksanakan penukaran berbilang kamera dan menyediakan beberapa kod sampel untuk membantu pembaca memahami dengan lebih baik. Asas panggilan kamera Dalam PHP, kita boleh memanggil kamera dengan memanggil API JavaScript. Secara khusus, kami

Bagaimana untuk menyelesaikan akses sumber luaran dan panggilan dalam pembangunan PHP Bagaimana untuk menyelesaikan akses sumber luaran dan panggilan dalam pembangunan PHP Oct 08, 2023 am 11:01 AM

Cara menyelesaikan masalah mengakses dan memanggil sumber luaran dalam pembangunan PHP memerlukan contoh kod khusus Dalam pembangunan PHP, kita sering menghadapi situasi di mana kita perlu mengakses dan memanggil sumber luaran, seperti antara muka API, perpustakaan pihak ketiga atau sumber pelayan lain. . Apabila berurusan dengan sumber luaran ini, kita perlu mempertimbangkan cara mengakses dan membuat panggilan dengan selamat sambil memastikan prestasi dan kebolehpercayaan. Artikel ini menerangkan beberapa penyelesaian biasa dan menyediakan contoh kod yang sepadan. 1. Gunakan perpustakaan curl untuk memanggil sumber luaran Curl ialah perpustakaan sumber terbuka yang sangat berkuasa.

Bagaimana untuk memanggil API Peta Baidu melalui pengaturcaraan Python untuk melaksanakan fungsi paparan peta? Bagaimana untuk memanggil API Peta Baidu melalui pengaturcaraan Python untuk melaksanakan fungsi paparan peta? Aug 02, 2023 pm 08:27 PM

Bagaimana untuk memanggil API Peta Baidu melalui pengaturcaraan Python untuk melaksanakan fungsi paparan peta? Dengan perkembangan pesat Internet, aplikasi peta telah menjadi bahagian yang amat diperlukan dalam kehidupan kita. Sebagai salah satu aplikasi peta terbesar di China, Peta Baidu memberikan kami pelbagai perkhidmatan dan antara muka API, yang boleh merealisasikan fungsi paparan peta dengan mudah. Artikel ini akan memperkenalkan cara memanggil API Peta Baidu melalui pengaturcaraan Python untuk merealisasikan fungsi paparan peta, dan memberikan contoh kod yang sepadan. Pertama, kita perlu mendaftar a

Bagaimana matlab memanggil fail m- kaedah matlab memanggil fail m Bagaimana matlab memanggil fail m- kaedah matlab memanggil fail m Mar 04, 2024 pm 01:49 PM

Ramai rakan masih tidak tahu cara memanggil fail m dalam matlab, jadi editor di bawah menerangkan cara memanggil fail m dalam matlab Jika anda memerlukan, cepat dan lihat saya percaya ia akan membantu semua orang. 1. Mula-mula buka perisian matlab dan klik "Buka" dalam antara muka utama, seperti yang ditunjukkan dalam rajah di bawah. 2. Kemudian pilih fail m yang perlu dibuka dan pilih Buka, seperti yang ditunjukkan dalam rajah di bawah. 3. Kemudian lihat nama fail dan bilangan pembolehubah fail m dalam editor, seperti yang ditunjukkan dalam rajah di bawah. 4. Anda boleh memasukkan nama fail m diikuti dengan nilai pembolehubah dalam kurungan pada baris arahan untuk memanggilnya, seperti yang ditunjukkan dalam rajah di bawah. 5. Akhirnya, fail m boleh berjaya dipanggil, seperti yang ditunjukkan dalam rajah di bawah. Di atas adalah penerangan lengkap tentang cara memanggil fail m dalam matlab yang dibawa oleh editor kepada anda.

Bagaimana untuk memanggil WebService menggunakan Java Bagaimana untuk memanggil WebService menggunakan Java Dec 29, 2023 pm 02:32 PM

Langkah kaedah menggunakan Java untuk memanggil WebService memerlukan contoh kod khusus Perkhidmatan Web ialah antara muka program aplikasi berasaskan Web yang menyediakan pelbagai fungsi melalui rangkaian. Dalam pembangunan Java, kita sering perlu menggunakan perkhidmatan Web untuk berinteraksi dengan sistem lain. Artikel ini akan memperkenalkan cara menggunakan Java untuk memanggil WebService dan memberikan contoh kod khusus. 1. Fahami WebService WebService ialah protokol komunikasi piawai menggunakan format XML

Amalan Laravel: Bagaimana untuk memanggil kaedah pengawal dengan betul? Amalan Laravel: Bagaimana untuk memanggil kaedah pengawal dengan betul? Mar 10, 2024 pm 01:15 PM

Amalan Laravel: Bagaimana untuk memanggil kaedah pengawal dengan betul? Dalam rangka kerja Laravel, pengawal adalah komponen penting yang berfungsi sebagai jambatan antara penghalaan dan model. Kaedah dalam pengawal digunakan untuk mengendalikan permintaan penghalaan, menghantar data kepada model untuk diproses, dan kemudian mengembalikannya ke paparan untuk paparan kepada pengguna. Oleh itu, memanggil kaedah pengawal dengan betul adalah penting untuk merealisasikan fungsi program. Artikel ini akan memperkenalkan cara memanggil kaedah pengawal dengan betul dalam Laravel dan memberikan contoh kod khusus.

See all articles