


jQuery melaksanakan demonstrasi ringkas effect_jquery penukaran Tab
Contoh dalam artikel ini ialah demonstrasi mudah kesan penukaran Tab jQuery Ia sepenuhnya pemikiran dan proses pelaksanaan saya sendiri, dan saya berkongsi dengan anda untuk rujukan anda. Butirannya adalah seperti berikut:
Pada mulanya bingkai kod Html saya kelihatan seperti ini:
<div class="tabs"> <ul> <li class="acss" data-box="#panel-1">标签1</li> <li class="bcss" data-box="#panel-2">标签2</li> <li class="bcss" data-box="#panel-3">标签3</li> </ul> <div id="panel-1">内容111111</div> <div id="panel-2" style="display:none;">内容222222</div> <div id="panel-3" style="display:none;">内容333333</div> </div>
Kemudian ditukar kepada yang berikut:
<dl class="tabs"> <dt> <a class="acss" href="#panel-1">标签1</a> <a class="bcss" href="#panel-2">标签2</a> <a class="bcss" href="#panel-3">标签3</a> </dt> <dd id="panel-1">内容1</dd> <dd id="panel-2" style="display:none;">内容2</dd> <dd id="panel-3" style="display:none;">内容3</dd> </dl>
Sebab saya menukar kepada ini adalah kerana saya berpendapat dl dt dd digunakan kurang daripada div ul li dalam reka letak halaman, yang boleh mencapai pengasingan yang lebih baik. Jika kita menggunakan js untuk mengendalikan objek dl dt dd, ia akan memberi kesan yang kurang pada elemen lain pada halaman Selain itu, tidak perlu menyesuaikan atribut kotak data dalam teg li, yang lebih sesuai dengan halaman piawaian penulisan. Dan rasa keseluruhan struktur ini lebih baik daripada yang di atas.
Kod pelaksanaan pemalam adalah seperti berikut:
(function ($) { $.fn.Tabs = function (options) { //默认参数设置 var settings = { beforeCss: "bcss", //激活前样式名 afterCss: "acss", //激活后样式名 model: "mouseover" //切换方式("mouseover"或者"click") }; //不为空,则合并参数 if (options) $.extend(settings, options); //获取a标签集合 var arr_a = $("> dt > a", this); //给a标签分别绑定事件 arr_a.each(function () { $(this).bind(settings.model, function (event) { //去除a标签的锚点跳转 event.preventDefault(); //样式控制 $(this).removeClass().addClass(settings.afterCss) .siblings("a").removeClass().addClass(settings.beforeCss); //隐藏与显示控制 var dd_id = $(this).attr("href"); $(dd_id).show().siblings("dd").hide(); }); }); //遵循链式原则 return this.each(function () { }); }; })(jQuery);
Sebab mengapa ia dikatakan ringan adalah kerana jumlah kod adalah sangat kecil dan sangat mudah. Komen tambah, saya percaya semua orang boleh faham.
Model dalam tetapan digunakan untuk mengawal kaedah pensuisan:
- Apabila "klik", klik untuk menukar
- Apabila ia "mengalih tetikus", tetikus meluncur masuk untuk bertukar.
Pada mulanya saya ingin menggunakan hover untuk melaksanakan penukaran slaid masuk tetikus, tetapi saya mendapati bahawa hover tidak menyokong pengikatan ikatan. Oleh kerana hover ialah hasil daripada jquery yang merangkum peristiwa alih tetikus, ia bukan peristiwa yang sahih dan oleh itu tidak boleh terikat.
Berikut ialah DEMO:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <style type="text/css"> * { margin: 0; padding: 0; } .tabs { width: 504px; margin: 50px auto; } .acss,.bcss { text-decoration:none; line-height: 35px; font-size: 14px; padding:8px 15px; } .bcss { background-color: #D4D4D4; border-bottom:1px solid white; } .acss { background-color: orange; border-bottom:1px solid orange; } .tabs dd { width: 500px; height: 300px; border: 1px solid orange; text-align: center; line-height: 300px; } </style> </head> <body> <dl class="tabs" id="tabs1"> <dt> <a class="acss" href="#panel-1">标签1</a> <a class="bcss" href="#panel-2">标签2</a> <a class="bcss" href="#panel-3">标签3</a> </dt> <dd id="panel-1"><h1>鼠标滑入切换</h1></dd> <dd id="panel-2" style="display:none;">内容2</dd> <dd id="panel-3" style="display:none;">内容3</dd> </dl> <dl class="tabs" id="tabs2"> <dt> <a class="acss" href="#panel-4">标签1</a><!--默认第一个激活--> <a class="bcss" href="#panel-5">标签2</a> <a class="bcss" href="#panel-6">标签3</a> </dt> <dd id="panel-4"><h1>鼠标点击切换</h1></dd><!--默认第一个显示--> <dd id="panel-5" style="display:none;">内容2</dd> <dd id="panel-6" style="display:none;">内容3</dd> </dl> <script src="../js/jquery-1.4.1.min.js" type="text/javascript"></script> <script src="../js/jquery.similar.Tabs.js" type="text/javascript"></script> <script type="text/javascript"> $("#tabs1").Tabs(); //默认鼠标滑入切换 $("#tabs2").Tabs({model:"click"}); //设置为点击切换 </script> </body> </html>
Rendering adalah seperti berikut:
Saya harap artikel ini akan membantu semua orang yang mempelajari pengaturcaraan jquery.

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Soalan dan penyelesaian yang sering ditanya untuk percetakan tiket kertas terma depan dalam pembangunan front-end, percetakan tiket adalah keperluan umum. Walau bagaimanapun, banyak pemaju sedang melaksanakan ...

Tidak ada gaji mutlak untuk pemaju Python dan JavaScript, bergantung kepada kemahiran dan keperluan industri. 1. Python boleh dibayar lebih banyak dalam sains data dan pembelajaran mesin. 2. JavaScript mempunyai permintaan yang besar dalam perkembangan depan dan stack penuh, dan gajinya juga cukup besar. 3. Faktor mempengaruhi termasuk pengalaman, lokasi geografi, saiz syarikat dan kemahiran khusus.

JavaScript adalah asas kepada pembangunan web moden, dan fungsi utamanya termasuk pengaturcaraan yang didorong oleh peristiwa, penjanaan kandungan dinamik dan pengaturcaraan tak segerak. 1) Pengaturcaraan yang didorong oleh peristiwa membolehkan laman web berubah secara dinamik mengikut operasi pengguna. 2) Penjanaan kandungan dinamik membolehkan kandungan halaman diselaraskan mengikut syarat. 3) Pengaturcaraan Asynchronous memastikan bahawa antara muka pengguna tidak disekat. JavaScript digunakan secara meluas dalam interaksi web, aplikasi satu halaman dan pembangunan sisi pelayan, sangat meningkatkan fleksibiliti pengalaman pengguna dan pembangunan silang platform.

Bagaimana cara menggabungkan elemen array dengan ID yang sama ke dalam satu objek dalam JavaScript? Semasa memproses data, kita sering menghadapi keperluan untuk mempunyai id yang sama ...

Perbincangan mengenai realisasi kesan animasi tatal dan elemen Parallax dalam artikel ini akan meneroka bagaimana untuk mencapai yang serupa dengan laman web rasmi Shiseido (https://www.shiseido.co.jp/sb/wonderland/) ... ...

Perbincangan mendalam mengenai punca-punca utama perbezaan dalam output konsol.log. Artikel ini akan menganalisis perbezaan hasil output fungsi Console.log dalam sekeping kod dan menerangkan sebab -sebab di belakangnya. � ...

Pembelajaran JavaScript tidak sukar, tetapi ia mencabar. 1) Memahami konsep asas seperti pembolehubah, jenis data, fungsi, dan sebagainya. 2) Pengaturcaraan asynchronous tuan dan melaksanakannya melalui gelung acara. 3) Gunakan operasi DOM dan berjanji untuk mengendalikan permintaan tak segerak. 4) Elakkan kesilapan biasa dan gunakan teknik debugging. 5) Mengoptimumkan prestasi dan mengikuti amalan terbaik.

Terokai pelaksanaan fungsi seretan panel dan drop panel seperti VSCode di bahagian depan. Dalam pembangunan front-end, bagaimana untuk melaksanakan vscode seperti ...
