Firefox中使用outerHTML的2种解决方法_javascript技巧
对于DOM对象的innerHTML属性想必大家都不会陌生,但是outerHTML用起来相对于会少一点了,innerHTML属性返回的是DOM对象从开始标签到结束标签中所包含的HTML,而outerHTML属性返回的是包括DOM对象本身标签在内的HTML,下图能很好的解释两个属性的区别:
outerHTML最开始是属于IE的私有属性,可以查看MSDN上的说明:outerHTML Property(http://msdn.microsoft.com/en-us/library/ms534310(VS.85).aspx)。目前IE、Chrome、Safari、Opera都能支持这个属性,杯具的是outerHTML不支持Firefox,在Firefox中该属性永远返回undefined,值得欣慰的是HTML5会加入这个属性。
让Firefox支持outerHTML属性可以通过扩展HTMLElement的原型来实现:
if (typeof(HTMLElement) != "undefined") {
HTMLElement.prototype.__defineSetter__("outerHTML", function(s) {
var r = this.ownerDocument.createRange();
r.setStartBefore(this);
var df = r.createContextualFragment(s);
this.parentNode.replaceChild(df, this);
return s;
});
HTMLElement.prototype.__defineGetter__("outerHTML", function(){
var a = this.attributes, str = " for (; i if (a[i].specified)
str = " " Hormis dans les machines a sous preferees universelles, les casinos offrent des jeux par exemple Grandes six roues, Pai Go Poker, Blackjack, Baccarat, la Roulette et le Craps, entre autres. a[i].name "="" a[i].value """;
if (!this.canHaveChildren)
return str " />";
return str ">" this.innerHTML "";
});
HTMLElement.prototype.__defineGetter__("canHaveChildren", function(){
return
!/^(area|base|basefont|
col|frame|hr|img|br|
input|isindex|link|meta
|param)$/.test(this.tagName.toLowerCase());
});
}
该方法出自W3Help(http://www.w3help.org/zh-cn/causes/SD9017),有点繁琐,而且还要侵入原型。还有一种更简单代替的办法,先创建一个空节点,将要获取outerHTML属性的DOM对象添加到这个空节点中,然后访问这个空节点的innerHTML就行了:
function outerHtml(elem){
if(typeof elem === "string") elem = document.getElementById(elem);
// 创建一个空div节点
var div = document.createElement("div");
// 将复制的elemCopy插入到空div节点中
div.appendChild(elem.cloneNode(true));
// 返回div的HTML内容
return div.innerHTML;
};
比起上面的办法,不用去动原型,代码量也少了很多,相信还会有其他的解决办法。

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

AI Hentai Generator
Menjana ai hentai secara percuma.

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

Untuk mengalih keluar FirefoxSnap dalam Ubuntu Linux, anda boleh mengikuti langkah berikut: Buka terminal dan log masuk ke sistem Ubuntu anda sebagai pentadbir. Jalankan arahan berikut untuk menyahpasang FirefoxSnap: sudosnapremovefirefox Anda akan digesa untuk kata laluan pentadbir anda. Masukkan kata laluan anda dan tekan Enter untuk mengesahkan. Tunggu pelaksanaan arahan selesai. Setelah selesai, FirefoxSnap akan dialih keluar sepenuhnya. Ambil perhatian bahawa ini akan mengalih keluar versi Firefox yang dipasang melalui pengurus pakej Snap. Jika anda memasang versi Firefox yang lain melalui cara lain (seperti pengurus pakej APT), anda tidak akan terjejas. Pergi melalui langkah-langkah di atas

Mozilla Firefox boleh dinyahpasang; Firefox ialah penyemak imbas pihak ketiga dan boleh dinyahpasang jika ia tidak diperlukan. Kaedah nyahpasang: 1. Dalam menu Mula, klik "Sistem Windwos" - "Panel Kawalan"; 2. Dalam antara muka "Panel Kawalan", klik "Program dan Ciri" 3. Dalam antara muka baharu, cari dan klik dua kali Ikon Pelayar Firefox; 4. Dalam tetingkap pop timbul, klik "Seterusnya" 5. Klik "Nyahpasang".

Menurut berita terkini, sementara Mozilla mengeluarkan versi stabil Firefox 112, ia juga mengumumkan bahawa versi utama seterusnya, Firefox 113, telah memasuki saluran Beta dan menyokong animasi AV1, penjana kata laluan yang dipertingkatkan dan ciri gambar dalam gambar. Fungsi/ciri baharu utama Firefox 113 adalah seperti berikut: Sokongan untuk imej animasi format AV1 (AVIS); Meningkatkan keselamatan penjana kata laluan dengan memperkenalkan aksara khas , dan dayakan skrin penuh dengan lebih mudah Mod menyediakan fail pemasangan DEB rasmi untuk pengedaran Debian dan Ubuntu ciri import penanda halaman yang dikemas kini, ikon untuk penanda halaman yang diimport disokong secara lalai Penyahkodan video AV1 dipercepatkan perkakasan didayakan secara lalai pada perkakasan yang disokong menggunakan w

Untuk perangkak merangkak tapak web yang memerlukan log masuk, kod pengesahan atau log masuk kod imbasan adalah masalah yang sangat menyusahkan. Scrapy ialah rangka kerja perangkak yang sangat mudah digunakan dalam Python, tetapi apabila memproses kod pengesahan atau mengimbas kod QR untuk log masuk, beberapa langkah khas perlu diambil. Sebagai pelayar biasa, Mozilla Firefox menyediakan penyelesaian yang boleh membantu kami menyelesaikan masalah ini. Modul teras Scrapy dipintal, yang hanya menyokong permintaan tak segerak, tetapi sesetengah tapak web memerlukan penggunaan kuki dan

Berita terkini hari ini, Mozilla secara rasmi mengeluarkan kemas kini versi stabil pelayar Firefox 115 hari ini Perkara yang paling penting tentang kemas kini ini ialah ini adalah versi terakhir yang menyokong Win7/Win8, macOS10.12, 10.13 dan 10.14. Alamat muat turun: https://ftp.mozilla.org/pub/firefox/releases/115.0/Mozilla dinyatakan dalam log kemas kini rasmi: Microsoft akan menamatkan sokongan untuk sistem Win7 dan Win8 pada Januari 2023, dan Firefox 115 dikeluarkan hari ini Versinya ialah kemas kini versi terakhir yang diterima oleh pengguna sistem tersebut. Pengguna Win7 dan Win8

Canonical baru-baru ini mengumumkan bahawa dalam Ubuntu 23.10 yang akan datang, Firefox Snap telah dikonfigurasikan untuk dijalankan dalam mod Wayland secara lalai. Nota: Ubuntu kini mempunyai sesi Wayland secara lalai, dan Firefox juga boleh berfungsi seperti biasa. Walau bagaimanapun, pada masa ini FirefoxSnap sebenarnya berjalan dalam mod keserasian XWayland, bukannya mod Wayland asli yang ketat. Canonical mengumumkan bahawa ia akan menjalankan pelayar Firefox dalam mod Wayland secara lalai, supaya masalah seperti kabur antara muka dan herotan penskalaan tidak akan berlaku pada paparan HiDPI, dan ia akan menyokong gerak isyarat sentuh seperti menyeret dan mencubit. Seperti yang dinyatakan di atas, Ubuntu

Berita baharu semalam: Walaupun Mozilla mengeluarkan kemas kini versi stabil Firefox 114, ia juga mengalihkan fokus pembangunannya kepada versi Firefox 115 dan melancarkan versi Beta hari ini. Adalah diketahui daripada laporan bahawa Firefox 115 memperkenalkan butang CookieBannerReduction dan QuickActions yang pada asalnya dirancang untuk dilancarkan dalam versi 114. Selepas pengguna mendayakan CookieBannerReduction dalam Firefox versi 115 dan melawati tapak web yang disokong, penyemak imbas secara automatik akan menolak permintaan kuki pada cookiebanner. Ciri kedua ialah butang QuickActions pada bar alamat

Jika anda ingin melayari Internet dengan lebih lancar, anda memerlukan pelayar yang mudah digunakan Jadi pelayar mana yang lebih baik dalam Win10? Editor di bawah mengesyorkan beberapa penyemak imbas yang lebih mudah digunakan untuk rujukan anda. 1. Google Chrome Pelayar ini boleh dikatakan lebih berkuasa apabila digunakan pada sistem win10 Ia ditulis berdasarkan perisian sumber terbuka lain, termasuk Mozilla dan webkit, yang sangat meningkatkan kestabilan, kelajuan dan keselamatan antara muka yang membuatkan anda berasa selesa menggunakannya. 2. Pelayar QQ Pelayar QQ ialah pelayar yang sangat mudah digunakan dan pelayar generasi baharu, jadi ia akan sangat sesuai untuk sistem win10 Seni bina baharu yang diguna pakai telah dioptimumkan sepenuhnya untuk kernel iaitu.
