JavaScript获取flash对象与网上的有所不同_javascript技巧
May 16, 2016 pm 04:51 PM关于js获取flash对象,网上有非常多的例子,我也尝试了不少方法。
虽然都能用,但是没有我最想要的东西,
后来看了下百度的,虽然很规范,各种情况都考虑到了,但是代码量却不是不容乐观,
前前后后将近20行代码,压缩后也有 864 个字节。
所以本文诞生了。
我想测试并分享下网上收集的几种我比较满意的方法。
也顺便请大家帮忙测试下兼容性,有不兼容的在下面留个言,最好写上浏览器版本,这样我也好测试并修复代码。
下面来看代码吧。
复制代码 代码如下:
function getFlashMovieObject( movieName ) {
if (window.document[movieName]) {
return window.document[movieName];
}
if (navigator.appName.indexOf("Microsoft Internet") == -1) {
if (document.embeds && document.embeds[movieName])
return document.embeds[movieName];
} else { // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
return document.getElementById(movieName);
}
}
这个方法比较保守,如果在 document 取到值了就直接返回,如果没取到,作者常用了 embeds 兼容替补来取,
当然IE是要特殊处理的,可是这里作者常用 getElementById ,而其他地方用 window 比较多。
当然 getElementById 是不会有错的,他取的是 object 的ID,因为embeds只有name没有ID。
复制代码 代码如下:
var flash = document["myFlash"] || window["myFlash"];
这个方法比较简洁明了,我也就不多啰嗦了。
复制代码 代码如下:
var flash = document["myFlash"];
这个是我在看了各种版本后,自己写的,因为我电脑上各种浏览器 + 虚拟机下 IE6-10 都测试通过,我也觉得纳闷了。
当然,如果正式用的话,我还是会选择方案一,但是有时候特殊情况,不需要兼容多浏览器的话,可以考虑这个哦。
下面是实际的例子,分别用三种方法取得flash对象后,并对flash进行控制测试。
如果有朋友发现不能测试通过的话,麻烦留下浏览器版本号和不能通过的方案,小弟先谢过了。
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

Artikel Panas
Berapa lama masa yang diperlukan untuk mengalahkan fiksyen berpecah?
3 minggu yang lalu
By DDD
Repo: Cara menghidupkan semula rakan sepasukan
3 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌

Alat panas Tag

Artikel Panas
Berapa lama masa yang diperlukan untuk mengalahkan fiksyen berpecah?
3 minggu yang lalu
By DDD
Repo: Cara menghidupkan semula rakan sepasukan
3 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌

Tag artikel 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

Ganti aksara rentetan dalam javascript

Tutorial Persediaan API Carian Google Custom

8 plugin susun atur halaman jquery yang menakjubkan
