cari
Rumahhujung hadapan webtutorial jsBina menu dinamik dalam artikel JavaScript

Bina menu dinamik dalam artikel JavaScript

Di sini, kami tidak bercakap mengenai menu drop-down/pull-down DHTML. Di sini, kita bercakap mengenai menu navigasi mudah menggunakan JavaScript. Ia mengenal pasti halaman aktif, dan dengan itu memaparkan pautan yang berbeza dari pautan lain, menjadikannya mudah bagi pengguna untuk menavigasi. Di sini kami akan menggunakan fail .js tunggal yang akan digunakan untuk semua halaman di bawah menu navigasi. Oleh itu, anda tidak perlu mengemas kini semua halaman: Anda perlu mengemas kini hanya satu fail perpustakaan JavaScript (fail .js). Sebagai contoh, pertimbangkan 3 pautan navigasi ini: Bina menu dinamik dalam artikel JavaScript pautan 1 aktif. Bina menu dinamik dalam artikel JavaScript Link 2 aktif. Bina menu dinamik dalam artikel JavaScript Pautan 3 aktif. Seperti yang anda lihat, ini adalah tembakan bagaimana menu navigasi muncul di halaman yang berbeza bergantung pada pautan yang aktif. Menu ini dihasilkan oleh satu fail JavaScript. Ia mungkin untuk membuat menu sedemikian menggunakan hanya Lembaran Gaya Cascading (CSS), dengan menentukan kelas (katakan .Links) untuk menu, dan memberikan sifat yang berbeza untuk .links: aktif. Jadi, anda boleh membuat menu hanya dengan menggunakan fail CSS. Walaupun ini sempurna, terdapat kelebihan untuk menggunakan JavaScript di sini. Seperti yang anda lihat dalam tembakan di atas, pautan aktif mempunyai watak "â» "pada akhirnya. Ini hanya dibuat untuk pautan aktif, oleh itu ia dibuat secara dinamik. Dengan JavaScript, anda boleh menggunakan mana -mana watak atau imej ikonik yang akan menjadikan pautan itu benar -benar kelihatan aktif.
Pelaksanaan
Untuk melaksanakan menu jenis ini, pertama sekali yang anda perlukan adalah fail CSS, katakan pautan_style.css, untuk menentukan gaya untuk pautan. Seterusnya datang fail javascript nav.js. Dalam fail nav.js, pertama sekali kami mengisytiharkan tiga tatasusunan. Satu array, yang dipanggil "Pautan", termasuk nama -nama pautan. Arahan lain dipanggil "links_text", dan terdiri daripada teks pautan (mis. Pautan 1). Yang pertama akan digunakan untuk perbandingan terhadap fail ini. Namakan pelbagai elemen dalam array Pautan menggunakan tajuk dari fail pautan, tidak termasuk lanjutan (iaitu jika pautan pertama membawa anda ke index.htm, namakan indeksnya). Arahan ketiga, yang dipanggil "links_url" termasuk URL yang mana pautan akan mengambil pengguna. Sekarang, apa yang kita mahukan ialah membandingkan setiap elemen dalam pautan array ke nama fail halaman semasa tanpa sambungan. Kami kemudian akan memberikan pautan gaya, dan apa jua teks atau imej tambahan yang anda telah memutuskan untuk menambah teks pautan untuk menyerlahkan halaman aktif. Biarkan loc menjadi rentetan perbandingan. loc boleh didapati sebagai: var loc = string (this.location); loc = loc.split ("/"); loc = loc [loc.length-1] .split ("."); loc = loc [loc.length-2]; Oleh itu, jika halaman semasa https://www.sitepoint.com/index.htm maka loc akan menjadi indeks. Sekarang kita membandingkannya dengan setiap elemen dalam pautan array. Unsur pertama array dan LOC ini sama, oleh itu kita menulis pautan ini dengan cara berikut. document.write (' ' links_text[i] ' » '); Oleh kerana unsur -unsur lain dalam array pautan tidak sama dengan loc, mereka akan ditulis sebagai: document.write (' 'links_text [i]' Letakkan kod ini di mana sahaja anda memerlukan menu navigasi untuk muncul di halaman. Kod lain yang anda perlukan adalah yang mesti diletakkan di bahagian halaman HTML anda. Oleh itu, penyenaraian 1 nav.js adalah: / * butiran pautan * / var pautan = array baru ("link1", "link2", "link3"); var links_text = array baru ("link 1", "link 2", "link 3"); var links_url = array baru ("link1.htm", "link2.htm", "link3.htm"); / * Menyelesaikan lokasi */ var loc = string (this.location); loc = loc.split ("/"); loc = loc [loc.length-1] .split ("."); loc = loc [loc.length-2]; Fungsi penjanaan menu */ fungsi dyn_menu_gen () {untuk (var i = 0; i ⠻ '); } else {document.write (' 'links_text [i]' '); }} / * Menjana menu * / dyn_menu_gen (); Penyenaraian 2, Links_style.css adalah: .explorer {font-family: verdana, arial, helvetica; saiz font: 8pt; Font-Weight: Normal; Teks-penyerapan: Tiada; Warna:#000000; Latar Belakang:#B5D0FF; kursor: tangan; lebar: 150px; Ketinggian: 30px; sempadan: 1 pepejal #a6c0ed} .explorer_over {font-family: verdana, arial, helvetica; saiz font: 8pt; Font-Weight: Normal; Teks-penyerapan: Tiada; Warna:#000000; Latar Belakang:#A7C0EB; kursor: tangan; lebar: 150px; Ketinggian: 30px; Sempadan-kanan: 1 pepejal #5C6980; Sempadan-Bottom: 1 Solid #5C6980; sempadan-kiri: 1 pepejal #b8d3ff; Border-top: 1 pepejal #b8d3ff} .explorer_down {font-family: verdana, arial, helvetica; saiz font: 8pt; Font-Weight: Normal; Teks-penyerapan: Tiada; Warna:#000000; Latar Belakang:#A7C0EB; kursor: tangan; lebar: 150px; Ketinggian: 30px; sempadan-kiri: 1 pepejal #5C6980; Border-top: 1 pepejal #5C6980; Sempadan-kanan: 1 pepejal #b8d3ff; Sempadan-bawah: 1 pepejal #b8d3ff} .explorer_active {font-family: verdana, arial, helvetica; saiz font: 8pt; Font-Weight: Normal; Teks-penyerapan: Tiada; Warna:#000000; Latar Belakang: #FFFFFF; kursor: tangan; lebar: 150px; ketinggian: 30px} .menu {font-family: verdana, arial, helvetica; saiz font: 8pt; Font-Weight: Normal; Teks-penyerapan: Tiada; Warna:#000000} Saya harap skrip ini memudahkan penciptaan navigasi JavaScript dinamik untuk laman web anda!

Soalan -soalan yang sering ditanya mengenai menu dinamik dalam JavaScript

Bagaimana saya boleh menambah submenu ke menu dinamik di JavaScript?

Anda boleh menggunakan kaedah AppendChild () untuk mencapai matlamat ini. Berikut adalah contoh mudah:

var parentmenuitem = document.getElementById ('parentMenuitem'); item menu yang anda mahu tambahkan submenu ke. 'Submenuitem' adalah item submenu baru yang anda tambahkan.

Bagaimana saya boleh mengeluarkan item menu dari menu dinamik di JavaScript?

Kaedah ini menghilangkan nod kanak -kanak tertentu dari elemen yang ditentukan. Berikut adalah contoh:

var menuitem = document.getElementById ('MenuItem');
MenuItem.ParentNode.RemoveChild (Menuitem); Teks item menu dalam menu dinamik di JavaScript boleh dilakukan dengan menggunakan harta InnerHTML. Inilah contoh:

var menuitem = document.getElementById ('MenuItem');
MenuItem.innerHtml = 'Teks item menu baru'; Menu Dinamik dalam JavaScript?

Menambah pendengar acara ke item menu dalam menu dinamik dalam JavaScript boleh dilakukan dengan menggunakan kaedah AddEventListener (). Kaedah ini melampirkan pengendali acara ke elemen yang ditentukan. Inilah contoh:

var menuitem = document.getElementById ('MenuItem'); Pendengar acara akan memaparkan amaran apabila item menu diklik. Harta ini menetapkan atau mengembalikan sifat gaya elemen. Inilah contoh:

var menuitem = document.getElementById ('MenuItem');
menuItem.style.color = 'merah';
menuitem.style.fontsize = '20px'; Harta gaya digunakan untuk menukar saiz warna dan fon item menu.

Bagaimana saya boleh membuat menu dinamik dalam JavaScript menggunakan array?

Berikut adalah contoh:

var menuitems = ['home', 'about', 'contact'];
var menu = document.getElementById ('menu');

untuk (var i = 0; i menu.AppendChild (MenuItem);
}
Data JSON melibatkan menghuraikan data JSON dan membuat item menu baru untuk setiap objek dalam data parsed. Inilah contoh:

var jsondata = '[{"text": "home"}, {"text": "about"}, {"text": "contact"}]';
var menuitems = json.parse (jsondata);

Bagaimana saya boleh membuat menu dinamik dalam JavaScript menggunakan data dari pelayan?

Membuat menu dinamik dalam JavaScript menggunakan data dari pelayan melibatkan membuat permintaan AJAX ke pelayan untuk mendapatkan data, dan kemudian membuat item menu baru untuk setiap data yang dikembalikan oleh pelayan yang dikembalikan oleh pelayan yang dikembalikan oleh pelayan yang dikembalikan oleh pelayan yang dikembalikan oleh pelayan yang dikembalikan oleh pelayan. Berikut adalah contoh menggunakan API API:

mengambil ('https://example.com/MenuiteMs')
.THEN (response => response.json ())
. {
var menuitem = document.createeelement ('li');

Bagaimana saya boleh membuat menu dropdown dinamik di JavaScript?

Mewujudkan menu dropdown dinamik dalam JavaScript melibatkan membuat elemen pilih baru dan menambah elemen pilihan untuk setiap item menu. Berikut adalah contoh:

var menuitems = ['home', 'about', 'contact'];
var dropdownMenu = document.createeLement ('pilih');


untuk (var i = 0; i option.text = menuItems [i];
dropdownmenu.appendchild (option);
}

document.body.appendchild (dropdownMenu); > Mewujudkan menu konteks dinamik dalam JavaScript melibatkan membuat elemen menu baru dan menambah item menu kepadanya, dan kemudian memaparkan menu pada kedudukan tetikus apabila butang tetikus kanan diklik. Berikut adalah contoh:

var menuitems = ['cut', 'copy', 'paste'];
var contextMenu = document.createelement ('ul');
contextmenu.style.display = 'none'; {
var menuitem = document.createeelement ('li');
menuitem.innerHtml = menuitems [i];
contextMenu.appendchild (menuItem); e.preventDefault ();
contextMenu.style.left = e.pagex 'px';
contextMenu.style.top = e.pagey 'px'; = 'tiada';
});
Dalam contoh ini, 'MenuItems' adalah pelbagai teks item menu konteks.

Atas ialah kandungan terperinci Bina menu dinamik dalam artikel JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
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
Jenis data JavaScript: Adakah terdapat perbezaan antara penyemak imbas dan nodej?Jenis data JavaScript: Adakah terdapat perbezaan antara penyemak imbas dan nodej?May 14, 2025 am 12:15 AM

Jenis data teras JavaScript adalah konsisten dalam penyemak imbas dan node.js, tetapi ditangani secara berbeza dari jenis tambahan. 1) Objek global adalah tetingkap dalam penyemak imbas dan global di Node.js. 2) Objek penampan unik Node.js, digunakan untuk memproses data binari. 3) Terdapat juga perbezaan prestasi dan pemprosesan masa, dan kod perlu diselaraskan mengikut persekitaran.

Komen JavaScript: Panduan untuk menggunakan // dan / * * /Komen JavaScript: Panduan untuk menggunakan // dan / * * /May 13, 2025 pm 03:49 PM

JavaScriptusestWotypesofcomments: Single-line (//) danMulti-line (//)

Python vs JavaScript: Analisis Perbandingan untuk PemajuPython vs JavaScript: Analisis Perbandingan untuk PemajuMay 09, 2025 am 12:22 AM

Perbezaan utama antara Python dan JavaScript ialah sistem jenis dan senario aplikasi. 1. Python menggunakan jenis dinamik, sesuai untuk pengkomputeran saintifik dan analisis data. 2. JavaScript mengamalkan jenis yang lemah dan digunakan secara meluas dalam pembangunan depan dan stack penuh. Kedua -duanya mempunyai kelebihan mereka sendiri dalam pengaturcaraan dan pengoptimuman prestasi yang tidak segerak, dan harus diputuskan mengikut keperluan projek ketika memilih.

Python vs JavaScript: Memilih alat yang sesuai untuk pekerjaanPython vs JavaScript: Memilih alat yang sesuai untuk pekerjaanMay 08, 2025 am 12:10 AM

Sama ada untuk memilih Python atau JavaScript bergantung kepada jenis projek: 1) Pilih Python untuk Sains Data dan Tugas Automasi; 2) Pilih JavaScript untuk pembangunan front-end dan penuh. Python disukai untuk perpustakaannya yang kuat dalam pemprosesan data dan automasi, sementara JavaScript sangat diperlukan untuk kelebihannya dalam interaksi web dan pembangunan stack penuh.

Python dan javascript: memahami kekuatan masing -masingPython dan javascript: memahami kekuatan masing -masingMay 06, 2025 am 12:15 AM

Python dan JavaScript masing -masing mempunyai kelebihan mereka sendiri, dan pilihan bergantung kepada keperluan projek dan keutamaan peribadi. 1. Python mudah dipelajari, dengan sintaks ringkas, sesuai untuk sains data dan pembangunan back-end, tetapi mempunyai kelajuan pelaksanaan yang perlahan. 2. JavaScript berada di mana-mana dalam pembangunan front-end dan mempunyai keupayaan pengaturcaraan tak segerak yang kuat. Node.js menjadikannya sesuai untuk pembangunan penuh, tetapi sintaks mungkin rumit dan rawan kesilapan.

Inti JavaScript: Adakah ia dibina di atas C atau C?Inti JavaScript: Adakah ia dibina di atas C atau C?May 05, 2025 am 12:07 AM

Javascriptisnotbuiltoncorc; it'saninterpretedlanguagethatrunsonenginesoftenwritteninc .1) javascriptwasdesignedasalightweight, interpratedlanguageforwebbrowsers.2)

Aplikasi JavaScript: Dari Front-End ke Back-EndAplikasi JavaScript: Dari Front-End ke Back-EndMay 04, 2025 am 12:12 AM

JavaScript boleh digunakan untuk pembangunan front-end dan back-end. Bahagian depan meningkatkan pengalaman pengguna melalui operasi DOM, dan back-end mengendalikan tugas pelayan melalui Node.js. 1. Contoh front-end: Tukar kandungan teks laman web. 2. Contoh backend: Buat pelayan Node.js.

Python vs JavaScript: Bahasa mana yang harus anda pelajari?Python vs JavaScript: Bahasa mana yang harus anda pelajari?May 03, 2025 am 12:10 AM

Memilih Python atau JavaScript harus berdasarkan perkembangan kerjaya, keluk pembelajaran dan ekosistem: 1) Pembangunan Kerjaya: Python sesuai untuk sains data dan pembangunan back-end, sementara JavaScript sesuai untuk pembangunan depan dan penuh. 2) Kurva Pembelajaran: Sintaks Python adalah ringkas dan sesuai untuk pemula; Sintaks JavaScript adalah fleksibel. 3) Ekosistem: Python mempunyai perpustakaan pengkomputeran saintifik yang kaya, dan JavaScript mempunyai rangka kerja front-end yang kuat.

See all articles

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!

Artikel Panas

Nordhold: Sistem Fusion, dijelaskan
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual