setAttribute (kaedah teras dom w3c)
3
pulangan
melemparkan
Berhati-hati apabila menggunakan nama-nama unta dalam setAttribute, kerana ini boleh menyebabkan ketidakkonsistenan dalam pelayar yang berbeza. Juga, apabila menetapkan nilai, nilai tidak dihuraikan, yang bermaksud rujukan entiti atau markup lain akan dianggap sebagai teks literal.
- Contoh
- Contoh di atas menetapkan atribut REL dengan nilai saya pada elemen.
element.setAttribute('rel', 'me');
Argumen
<a href="http://www.brothercake.com/">brothercake</a>
name
<a href="http://www.brothercake.com/" rel="me">brothercake</a>
- nama atribut ke
buat atau mengubah.
- nilai
- (domstring)
diperlukan
nilai rentetan untuk atribut. - Keterangan
- Tetapkan atribut baru dengan nama dan nilai yang ditentukan ke elemen ini.
Kaedah ini adalah untuk bekerja dengan atribut yang tidak bersuara; Untuk menambah atribut nama, gunakan kaedah setAttributens Dom 2 sebaliknya.
Berhati-hati dengan nama atribut yang berasaskan unta
Anda harus berhati-hati dengan menggunakan nama-nama unta dalam kod yang dimaksudkan untuk semua pelayar, kerana dalam opera dalam mod XHTML, menetapkan atribut dengan nama yang berasaskan unta boleh menjejaskan harta DOM yang sepadan. Sebagai contoh, jika anda menetapkan atribut yang dipanggil tabIndex ke sebarang nilai, ia akan mempunyai kesan menetapkan semula harta tabIndex ke 0 (nilai lalai), mengeluarkan atribut TabIndex asal sepenuhnya, dan mewujudkan atribut baru dengan nama TabIndex dan Nilai rentetan yang ditentukan.
Tingkah laku ini mungkin turun ke ketidakkonsistenan bagaimana sensitiviti kes ditangani dalam mod XHTML. Dalam penyemak imbas lain (Firefox dan Safari) melakukan ini akan mewujudkan atribut baru yang dipanggil Tabindex, sambil meninggalkan atribut TabIndex asal dan harta tabindex yang sepadan tidak berubah.
Nota ini hanya terpakai kepada penyemak imbas ini dalam mod XHTML-Dalam mod HTML2 Argumen Nama adalah kes-insensitif, jadi TabIndex dianggap sebagai TabIndex.
Selain itu, IE dalam HTML tidak dapat menetapkan atribut jenis elemen input - cuba berbuat demikian akan membuang ralat (arahan ini tidak disokong). Ia juga tidak dapat menetapkan atribut gaya (berbuat demikian hanya tidak mempunyai kesan), dan tidak dapat menetapkan atribut pengendalian peristiwa sebagai rentetan (untuk berbuat demikian tidak mempunyai kesan, melainkan elemen itu sudah mempunyai atribut pengendalian peristiwa dengan nama yang sama, di mana kes operasi untuk menetapkan yang baru akan menghapuskan yang lama, meninggalkan apa -apa - walaupun GetAttribute kemudiannya akan mengembalikan nilai rentetan yang ditetapkan, tidak akan menjadi pengendali acara aktif pada elemen). Walau bagaimanapun, ia boleh menetapkan atribut pengendalian peristiwa jika fungsi diluluskan sebagai hujah nilai, bukannya rentetan:
element.setAttribute('rel', 'me');
Akhirnya, jika kaedah ini digunakan untuk menetapkan atribut SRC imej, nilai yang kemudiannya dikembalikan dari GetAttribute akan menjadi URI yang berkelayakan sepenuhnya; Ini adalah sama dengan tingkah lakunya apabila mengambil SRC yang telah ditetapkan dalam HTML statik. Walau bagaimanapun apabila menetapkan href pautan, nilai yang kemudiannya dikembalikan akan menjadi nilai literal yang ditetapkan; Ini berbeza dengan tingkah lakunya dengan HTML statik di mana nilai dikembalikan sebagai URI yang berkelayakan.
Bagaimana saya tahu jika ia berfungsi?
Mewujudkan sama ada kaedah ini berfungsi seperti yang diharapkan adalah sangat sukar, kerana ia mungkin untuk menetapkan atribut apa -apa nama sama sekali, walaupun ia mungkin bukan atribut yang anda harapkan. Sebagai contoh, di Internet Explorer, anda masih boleh menetapkan atribut yang dipanggil kelas, dan seterusnya mengambilnya dengan getAttribute ('kelas'), tetapi ia tidak akan sesuai dengan harta nama kelas - ia akan menjadi atribut yang sepenuhnya berasingan yang tidak membuat perbezaan visual elemen.
Dalam semua penyemak imbas atribut yang menilai kepada boolean (seperti dilumpuhkan) hanya boleh ditetapkan kepada benar - menetapkannya kepada palsu tidak mempunyai kesan. Ini adalah tingkah laku yang betul, dan kerana atribut tersebut hanya mempunyai satu nilai yang mungkin (iaitu dilumpuhkan = "dilumpuhkan"), atau tidak ditakrifkan (jadi menafikannya harus dilakukan dengan penghapusan). Dalam Opera 9.5, Firefox dan Safari nilai atribut kemudiannya akan kembali sebagai palsu tetapi elemen masih akan dilumpuhkan, dalam Opera 9.0 nilai akan terus kembali sebagai dilumpuhkan, dan di Internet Explorer nilai akan terus kembali sebagai Boolean benar; Ini adalah refleksi yang tepat mengenai keadaan elemen, walaupun mereka agak mengelirukan! Walau bagaimanapun, kerana IE menganggap sifat -sifat ini mempunyai nilai boolean sebenar, nilai itu boleh ditukar (dan elemen dilumpuhkan dan didayakan dengan sewajarnya) dengan menetapkannya sebagai boolean dan bukannya rentetan:
element.setAttribute('rel', 'me');
Internet Explorer melaksanakan hujah kedua kepada setAttribute, yang merupakan bendera sensitiviti kes yang boleh mengambil nilai 0 (kes-insensitif) atau 1 (lalai, sensitif kes). Hujah ini berfungsi seperti yang diharapkan dalam IE, dan tidak menjejaskan pelayar lain.
Soalan Lazim mengenai SetAttribute W3C DOM Core Method
Apakah kaedah setAttribute dalam JavaScript?
Kaedah setAttribute dalam JavaScript adalah bahagian penting dari model objek dokumen (DOM) yang membolehkan pemaju memanipulasi elemen HTML. Kaedah ini digunakan untuk menambah, menukar, atau mengemas kini atribut dan nilai mereka dalam elemen HTML. Ia mengambil dua parameter: nama atribut dan nilainya. Sebagai contoh, jika anda ingin menukar warna teks, anda boleh menggunakan setAttribute untuk mengubah suai atribut gaya elemen. Untuk menambah atau menukar nilai atribut, GetAttribute digunakan untuk mengambil nilai atribut. Kedua -duanya adalah kaedah antara muka elemen dalam DOM. Mereka bekerjasama untuk membolehkan pemaju berinteraksi dengan dan memanipulasi elemen HTML. Kaedah ini boleh mengubah atribut gaya elemen HTML, yang mengandungi sifat CSS. Walau bagaimanapun, penting untuk diperhatikan bahawa menggunakan setAttribute akan menimpa mana -mana gaya inline sedia ada. Sekiranya anda ingin menukar harta gaya tertentu tanpa menjejaskan orang lain, lebih baik menggunakan sifat gaya elemen. Ada, kaedah setAttribute akan menciptanya dengan nilai yang ditentukan. Ini adalah salah satu sebab mengapa setAttribute sangat kuat: ia membolehkan pemaju menambahkan atribut secara dinamik kepada elemen HTML.
Bolehkah saya menggunakan setAttribute dengan atribut data tersuai?
Ya, setAttribute boleh digunakan dengan atribut data tersuai. Ini amat berguna apabila anda perlu menyimpan maklumat tambahan yang tidak mempunyai perwakilan visual. Ingatlah untuk awalan nama atribut dengan 'data-' untuk mematuhi piawaian HTML5.
Adakah setattribute kes-sensitif? Ini bermakna bahawa 'kelas' dan 'kelas' akan dianggap sebagai dua atribut yang berbeza. Sentiasa pastikan anda menggunakan kes yang betul apabila bekerja dengan atribut. Ini kerana nilai atribut peristiwa sentiasa menjadi rentetan, yang bermaksud anda tidak boleh secara langsung menetapkan fungsi sebagai pengendali acara. Sebaliknya, gunakan kaedah AddEventListener, yang direka khusus untuk tujuan ini. Walau bagaimanapun, tidak semua atribut boleh digunakan untuk semua elemen. Sebagai contoh, atribut 'src' adalah relevan untuk elemen 'img', tetapi bukan untuk elemen 'p'. secara dinamik mengubah penampilan atau tingkah laku elemen HTML. Sebagai contoh, anda mungkin menggunakannya untuk menukar warna teks, menambah sempadan ke imej, atau menukar sumber imej. Ia juga digunakan untuk menambah atribut data tersuai.
Adakah terdapat sebarang alternatif untuk setAttribute? Sebagai contoh, anda boleh mengubahsuai sifat -sifat elemen HTML secara langsung. Ini selalunya lebih mudah dan lebih intuitif daripada menggunakan setAttribute. Walau bagaimanapun, SetAttribute mempunyai kelebihan untuk dapat bekerja dengan sebarang atribut, termasuk atribut data tersuai.
Atas ialah kandungan terperinci setAttribute (kaedah teras dom w3c). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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











Python lebih sesuai untuk pemula, dengan lengkung pembelajaran yang lancar dan sintaks ringkas; JavaScript sesuai untuk pembangunan front-end, dengan lengkung pembelajaran yang curam dan sintaks yang fleksibel. 1. Sintaks Python adalah intuitif dan sesuai untuk sains data dan pembangunan back-end. 2. JavaScript adalah fleksibel dan digunakan secara meluas dalam pengaturcaraan depan dan pelayan.

Peralihan dari C/C ke JavaScript memerlukan menyesuaikan diri dengan menaip dinamik, pengumpulan sampah dan pengaturcaraan asynchronous. 1) C/C adalah bahasa yang ditaip secara statik yang memerlukan pengurusan memori manual, manakala JavaScript ditaip secara dinamik dan pengumpulan sampah diproses secara automatik. 2) C/C perlu dikumpulkan ke dalam kod mesin, manakala JavaScript adalah bahasa yang ditafsirkan. 3) JavaScript memperkenalkan konsep seperti penutupan, rantaian prototaip dan janji, yang meningkatkan keupayaan pengaturcaraan fleksibiliti dan asynchronous.

Penggunaan utama JavaScript dalam pembangunan web termasuk interaksi klien, pengesahan bentuk dan komunikasi tak segerak. 1) kemas kini kandungan dinamik dan interaksi pengguna melalui operasi DOM; 2) pengesahan pelanggan dijalankan sebelum pengguna mengemukakan data untuk meningkatkan pengalaman pengguna; 3) Komunikasi yang tidak bersesuaian dengan pelayan dicapai melalui teknologi Ajax.

Aplikasi JavaScript di dunia nyata termasuk pembangunan depan dan back-end. 1) Memaparkan aplikasi front-end dengan membina aplikasi senarai TODO, yang melibatkan operasi DOM dan pemprosesan acara. 2) Membina Restfulapi melalui Node.js dan menyatakan untuk menunjukkan aplikasi back-end.

Memahami bagaimana enjin JavaScript berfungsi secara dalaman adalah penting kepada pemaju kerana ia membantu menulis kod yang lebih cekap dan memahami kesesakan prestasi dan strategi pengoptimuman. 1) aliran kerja enjin termasuk tiga peringkat: parsing, penyusun dan pelaksanaan; 2) Semasa proses pelaksanaan, enjin akan melakukan pengoptimuman dinamik, seperti cache dalam talian dan kelas tersembunyi; 3) Amalan terbaik termasuk mengelakkan pembolehubah global, mengoptimumkan gelung, menggunakan const dan membiarkan, dan mengelakkan penggunaan penutupan yang berlebihan.

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Kedua -dua pilihan Python dan JavaScript dalam persekitaran pembangunan adalah penting. 1) Persekitaran pembangunan Python termasuk Pycharm, Jupyternotebook dan Anaconda, yang sesuai untuk sains data dan prototaip cepat. 2) Persekitaran pembangunan JavaScript termasuk node.js, vscode dan webpack, yang sesuai untuk pembangunan front-end dan back-end. Memilih alat yang betul mengikut keperluan projek dapat meningkatkan kecekapan pembangunan dan kadar kejayaan projek.

C dan C memainkan peranan penting dalam enjin JavaScript, terutamanya digunakan untuk melaksanakan jurubahasa dan penyusun JIT. 1) C digunakan untuk menghuraikan kod sumber JavaScript dan menghasilkan pokok sintaks abstrak. 2) C bertanggungjawab untuk menjana dan melaksanakan bytecode. 3) C melaksanakan pengkompil JIT, mengoptimumkan dan menyusun kod hot-spot semasa runtime, dan dengan ketara meningkatkan kecekapan pelaksanaan JavaScript.
