Plugin ใน Navigator Object
แต่ละ Plugin ใน navigator.plugins Array มี Properties ดังนี้:
Properties ของ Plugin
| Property | คำอธิบาย |
|---|---|
| name | ชื่อของ Plugin |
| filename | ชื่อไฟล์ Executable ที่โหลดติดตั้ง Plugin |
| description | คำอธิบายของ Plugin จาก Developer |
| mimeTypes | Array ของ MIME Types ที่ Plugin รองรับ |
MimeType Object Properties
แต่ละ Entry ใน mimeTypes Array มี:
| Property | คำอธิบาย |
|---|---|
| type | MIME Type String (เช่น "application/pdf") |
| suffixes | File Extensions (เช่น "pdf") |
| description | คำอธิบาย MIME Type |
| enabledPlugin | Reference กลับไป Plugin Object |
ตัวอย่าง: แสดงรายการ Plugins
for (let plugin of navigator.plugins) {
console.log(`Name: ${plugin.name}`);
console.log(`File: ${plugin.filename}`);
console.log(`Desc: ${plugin.description}`);
console.log('MIME Types:');
for (let mime of plugin.mimeTypes) {
console.log(` ${mime.type} (${mime.suffixes}) - ${mime.description}`);
}
console.log('---');
}
สถานะปัจจุบัน (2024+)
- NPAPI Plugins ถูก Deprecated/Removed แล้ว (Chrome 45+, Firefox 52+, Edge, Safari)
- เหลือแค่ Built-in Plugins: PDF Viewer, Widevine CDM, Native Client (Deprecated)
navigator.pluginsยังคงมีแต่คืนค่า Array ว่างหรือ Built-ins เท่านั้น- เว็บสมัยใหม่ใช้ WebAssembly, WebGL, WebCodecs, File System Access API แทน
สรุป
Plugin Object มี Properties: name, filename, description, mimeTypes แต่ NPAPI Plugins ถูก Deprecated แล้ว ไม่ควรพึ่งพา Plugin Architecture อีกต่อไป