คำอธิบาย
ใช้ chrome.input.ime
API เพื่อใช้งาน IME ที่กำหนดเองสำหรับ Chrome OS วิธีนี้ช่วยให้ส่วนขยายของคุณจัดการการกดแป้นพิมพ์ ตั้งค่าการเรียบเรียง และจัดการหน้าต่างตัวเลือกได้
สิทธิ์
input
คุณต้องประกาศสิทธิ์ "input" ในไฟล์ Manifest ของส่วนขยายเพื่อใช้ Input.ime API ตัวอย่างเช่น
{
"name": "My extension",
...
"permissions": [
"input"
],
...
}
ความพร้อมใช้งาน
ตัวอย่าง
โค้ดต่อไปนี้จะสร้าง IME ที่แปลงตัวอักษรที่พิมพ์ให้เป็นตัวพิมพ์ใหญ่
var context_id = -1;
chrome.input.ime.onFocus.addListener(function(context) {
context_id = context.contextID;
});
chrome.input.ime.onKeyEvent.addListener(
function(engineID, keyData) {
if (keyData.type == "keydown" && keyData.key.match(/^[a-z]$/)) {
chrome.input.ime.commitText({"contextID": context_id,
"text": keyData.key.toUpperCase()});
return true;
} else {
return false;
}
}
);
ประเภท
AssistiveWindowButton
รหัสของปุ่มในหน้าต่างความช่วยเหลือพิเศษ
ค่าแจกแจง
"addToDictionary"
AssistiveWindowProperties
คุณสมบัติของหน้าต่างความช่วยเหลือพิเศษ
พร็อพเพอร์ตี้
-
announceString
string ไม่บังคับ
สตริงสำหรับ ChromeVox ที่จะประกาศ
-
ประเภท
-
มองเห็นได้
boolean
ตั้งค่า "จริง" เพื่อแสดง AssistiveWindow และตั้งค่า "เท็จ" เป็นซ่อน
AssistiveWindowType
ประเภทของหน้าต่างความช่วยเหลือพิเศษ
ค่า
AutoCapitalizeType
ประเภทการใช้ตัวพิมพ์ใหญ่อัตโนมัติของช่องข้อความ
ค่าแจกแจง
"words"
InputContext
อธิบายบริบทของอินพุต
พร็อพเพอร์ตี้
-
autoCapitalizeChrome เวอร์ชัน 69 ขึ้นไป
ประเภทการใช้ตัวพิมพ์ใหญ่อัตโนมัติของช่องข้อความ
-
autoComplete
boolean
ช่องข้อความต้องการการเติมข้อความอัตโนมัติหรือไม่
-
autoCorrect
boolean
ช่องข้อความต้องการการแก้ไขอัตโนมัติหรือไม่
-
contextID
ตัวเลข
ใช้เพื่อระบุเป้าหมายของการดำเนินการช่องข้อความ รหัสนี้จะใช้ไม่ได้ทันทีที่มีการเรียกใช้ onBlur
-
shouldDoLearning
boolean
Chrome 68 ขึ้นไปควรใช้ข้อความที่ป้อนลงในช่องข้อความเพื่อปรับปรุงคำแนะนำในการพิมพ์สำหรับผู้ใช้หรือไม่
-
spellCheck
boolean
ช่องข้อความต้องการตรวจตัวสะกดหรือไม่
-
ประเภท
ประเภทค่าที่แก้ไขช่องข้อความ (ข้อความ, ตัวเลข, URL ฯลฯ)
InputContextType
ประเภทค่าที่แก้ไขช่องข้อความ (ข้อความ, ตัวเลข, URL ฯลฯ)
ค่าแจกแจง
"tel"
"url"
"null"
KeyboardEvent
ดู http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardEvent
พร็อพเพอร์ตี้
-
altKey
บูลีน ไม่บังคับ
กดปุ่ม ALT หรือไม่
-
altgrKey
บูลีน ไม่บังคับ
Chrome 79 ขึ้นไปกดปุ่ม ALTGR หรือไม่
-
capsLock
บูลีน ไม่บังคับ
ระบุว่า CAPS_LOCK เปิดใช้งานอยู่หรือไม่
-
รหัส
string
ค่าของคีย์จริงที่กด ค่านี้จะไม่ได้รับผลกระทบจากเลย์เอาต์แป้นพิมพ์ปัจจุบันหรือสถานะตัวปรับแต่ง
-
ctrlKey
บูลีน ไม่บังคับ
มีการกดปุ่ม Ctrl หรือไม่
-
extensionId
string ไม่บังคับ
รหัสส่วนขยายของผู้ส่งเหตุการณ์คีย์นี้
-
แป้น
string
ค่าของคีย์ที่กด
-
keyCode
หมายเลข ไม่บังคับ
KeyCode ของ HTML ที่เลิกใช้งานแล้ว ซึ่งเป็นโค้ดตัวเลขที่ขึ้นอยู่กับระบบและการใช้งาน ซึ่งใช้แทนตัวระบุที่ไม่ได้แก้ไขซึ่งเชื่อมโยงกับคีย์ที่กด
-
requestId
string ไม่บังคับ
(เลิกใช้งานแล้ว) รหัสของคำขอ ใช้พารามิเตอร์
requestId
จากเหตุการณ์onKeyEvent
แทน -
shiftKey
บูลีน ไม่บังคับ
กดปุ่ม SHIFT หรือไม่
-
ประเภท
คีย์อัปหรือคีย์ดาวน์แบบใดแบบหนึ่ง
KeyboardEventType
ค่าแจกแจง
"keyup"
"keydown"
MenuItem
รายการเมนูที่วิธีการป้อนข้อมูลใช้เพื่อโต้ตอบกับผู้ใช้จากเมนูภาษา
พร็อพเพอร์ตี้
-
เลือกไว้
บูลีน ไม่บังคับ
บ่งบอกว่ารายการนี้ควรวาดด้วยเครื่องหมายถูก
-
เปิดใช้อยู่
บูลีน ไม่บังคับ
บ่งบอกว่ามีการเปิดใช้รายการนี้แล้ว
-
id
string
สตริงที่จะส่งไปยัง Callback ที่อ้างอิง MenuItem นี้
-
ป้ายกำกับ
string ไม่บังคับ
ข้อความที่แสดงในเมนูของรายการนี้
-
รูปแบบ
MenuItemStyle ไม่บังคับ
ประเภทของรายการในเมนู
-
มองเห็นได้
บูลีน ไม่บังคับ
บ่งบอกว่ารายการนี้มองเห็นได้
MenuItemStyle
ประเภทของรายการในเมนู ระบบจะถือว่าปุ่มตัวเลือกระหว่างตัวคั่นที่เป็นกลุ่ม
ค่าแจกแจง
MenuParameters
พร็อพเพอร์ตี้
-
engineID
string
รหัสของเครื่องมือที่จะใช้
-
items
MenuItem[]
MenuItem ที่จะเพิ่มหรืออัปเดต ซึ่งจะเพิ่มตามลำดับที่มีอยู่ในอาร์เรย์
MouseButton
ปุ่มเมาส์ใดถูกคลิก
ค่าแจกแจง
ScreenType
ประเภทหน้าจอที่เปิดใช้งาน IME
ค่าแจกแจง
UnderlineStyle
ประเภทของการขีดเส้นใต้เพื่อแก้ไขส่วนนี้
ค่าแจกแจง
"underline"
WindowPosition
ตำแหน่งที่จะแสดงหน้าต่างตัวเลือก หากตั้งค่าเป็น "เคอร์เซอร์" หน้าต่างจะเลื่อนตามเคอร์เซอร์ หากตั้งค่าเป็น "การเรียบเรียง" หน้าต่างจะล็อกไว้ที่จุดเริ่มต้นของการเรียบเรียง
ค่าแจกแจง
"composition"
วิธีการ
clearComposition()
chrome.input.ime.clearComposition(
parameters: object,
callback?: function,
)
ล้างองค์ประกอบปัจจุบัน หากส่วนขยายนี้ไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่จะไม่สามารถดำเนินการได้
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะล้างการเรียบเรียง
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(success: boolean) => void
-
สำเร็จ
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
commitText()
chrome.input.ime.commitText(
parameters: object,
callback?: function,
)
ย้ายข้อความที่ให้ไว้ไปยังอินพุตปัจจุบัน
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะมีการคอมมิตข้อความ
-
ข้อความ
string
ข้อความที่จะยืนยัน
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(success: boolean) => void
-
สำเร็จ
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
deleteSurroundingText()
chrome.input.ime.deleteSurroundingText(
parameters: object,
callback?: function,
)
ลบข้อความรอบๆ เครื่องหมายตก
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่ข้อความโดยรอบจะถูกลบ
-
engineID
string
รหัสของเครื่องมือที่รับเหตุการณ์
-
length
ตัวเลข
จำนวนอักขระที่จะลบ
-
หักลบ
ตัวเลข
ค่าออฟเซ็ตจากตำแหน่งเคอร์เซอร์ข้อความจะเริ่มต้นการลบ ค่านี้อาจเป็นลบได้
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
hideInputView()
chrome.input.ime.hideInputView()
ซ่อนหน้าต่างมุมมองการป้อนข้อมูล และระบบจะแสดงป๊อปอัปขึ้นมาโดยอัตโนมัติ หากหน้าต่างมุมมองอินพุตซ่อนอยู่แล้ว ฟังก์ชันนี้จะทำงานไม่ได้
keyEventHandled()
chrome.input.ime.keyEventHandled(
requestId: string,
response: boolean,
)
ระบุว่าเหตุการณ์สำคัญที่ onKeyEvent ได้รับได้รับการจัดการ ควรมีการเรียกใช้ก็ต่อเมื่อ Listener onKeyEvent เป็นแบบไม่พร้อมกันเท่านั้น
พารามิเตอร์
-
requestId
string
รหัสคำขอของเหตุการณ์ที่จัดการ ซึ่งควรมาจาก keyEvent.requestId
-
การตอบกลับ
boolean
จริง หากมีการจัดการการกดแป้นพิมพ์ เท็จหากไม่ใช่
sendKeyEvents()
chrome.input.ime.sendKeyEvents(
parameters: object,
callback?: function,
)
ส่งเหตุการณ์สําคัญ ฟังก์ชันนี้ต้องใช้โดยแป้นพิมพ์เสมือน เมื่อผู้ใช้กดแป้นบนแป้นพิมพ์เสมือน ระบบจะใช้ฟังก์ชันนี้เพื่อเผยแพร่เหตุการณ์ดังกล่าวไปยังระบบ
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะส่งเหตุการณ์สำคัญ หรือเป็น 0 เพื่อส่งเหตุการณ์สำคัญไปยังช่องที่ไม่ใช่อินพุต
-
keyData
ข้อมูลเกี่ยวกับเหตุการณ์สําคัญ
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
setAssistiveWindowButtonHighlighted()
chrome.input.ime.setAssistiveWindowButtonHighlighted(
parameters: object,
callback?: function,
)
ไฮไลต์/เลิกไฮไลต์ปุ่มในหน้าต่างความช่วยเหลือพิเศษ
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
announceString
string ไม่บังคับ
ข้อความที่โปรแกรมอ่านหน้าจอจะแจ้ง
-
buttonID
รหัสของปุ่ม
-
contextID
ตัวเลข
รหัสของบริบทที่เป็นเจ้าของหน้าต่างความช่วยเหลือ
-
ไฮไลต์ไว้
boolean
ควรไฮไลต์ปุ่มไหม
-
windowType
ประเภทหน้าต่างที่มีปุ่ม
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
setAssistiveWindowProperties()
chrome.input.ime.setAssistiveWindowProperties(
parameters: object,
callback?: function,
)
แสดง/ซ่อนหน้าต่างความช่วยเหลือพิเศษที่มีพร็อพเพอร์ตี้ที่ระบุ
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่เป็นเจ้าของหน้าต่างความช่วยเหลือ
-
พร็อพเพอร์ตี้
คุณสมบัติของหน้าต่างความช่วยเหลือพิเศษ
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(success: boolean) => void
-
สำเร็จ
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
setCandidates()
chrome.input.ime.setCandidates(
parameters: object,
callback?: function,
)
กำหนดรายชื่อผู้สมัครปัจจุบัน การดำเนินการนี้จะไม่สำเร็จหากส่วนขยายนี้ไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
ตัวเลือก
วัตถุ[]
รายชื่อผู้สมัครที่จะแสดงในหน้าต่างผู้สมัคร
-
คำอธิบายประกอบ
string ไม่บังคับ
ข้อความเพิ่มเติมที่อธิบายผู้สมัคร
-
ตัวเลือก
string
ผู้สมัคร
-
id
ตัวเลข
รหัสของผู้สมัคร
-
ป้ายกำกับ
string ไม่บังคับ
สตริงสั้นๆ ที่ปรากฏถัดจากผู้สมัคร ซึ่งมักจะเป็นแป้นพิมพ์ลัดหรือดัชนี
-
parentId
หมายเลข ไม่บังคับ
รหัสที่จะเพิ่มตัวเลือกเหล่านี้ใต้
-
การใช้งาน
ออบเจ็กต์ไม่บังคับ
การใช้หรือคำอธิบายรายละเอียดของคำ
-
body
string
สตริงเนื้อหาของคำอธิบายรายละเอียด
-
title
string
สตริงชื่อของคำอธิบายรายละเอียด
-
-
-
contextID
ตัวเลข
รหัสของบริบทที่เป็นเจ้าของหน้าต่างผู้สมัคร
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(success: boolean) => void
-
สำเร็จ
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
setCandidateWindowProperties()
chrome.input.ime.setCandidateWindowProperties(
parameters: object,
callback?: function,
)
ตั้งค่าคุณสมบัติของหน้าต่างตัวเลือก การดำเนินการนี้จะไม่สำเร็จหากส่วนขยายไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
engineID
string
รหัสของเครื่องมือที่จะตั้งค่าพร็อพเพอร์ตี้
-
พร็อพเพอร์ตี้
ออบเจ็กต์
-
auxiliaryText
string ไม่บังคับ
ข้อความที่ปรากฏที่ด้านล่างของหน้าต่างผู้สมัคร
-
auxiliaryTextVisible
บูลีน ไม่บังคับ
"จริง" เพื่อแสดงข้อความเสริม "เท็จ" เพื่อซ่อนข้อความ
-
currentCandidateIndex
หมายเลข ไม่บังคับ
Chrome 84 ขึ้นไปดัชนีของผู้สมัครที่เลือกในปัจจุบันจากผู้สมัครทั้งหมด
-
cursorVisible
บูลีน ไม่บังคับ
"จริง" เพื่อแสดงเคอร์เซอร์ "เท็จ" หากต้องการซ่อนเคอร์เซอร์
-
pageSize
หมายเลข ไม่บังคับ
จำนวนตัวเลือกที่จะแสดงต่อ 1 หน้า
-
totalCandidates
หมายเลข ไม่บังคับ
Chrome 84 ขึ้นไปจำนวนผู้สมัครทั้งหมดสำหรับกรอบเวลาของผู้สมัคร
-
แนวตั้ง
บูลีน ไม่บังคับ
จริง หากหน้าต่างตัวเลือกควรแสดงเป็นแนวตั้ง และเป็นเท็จเพื่อทำให้เป็นแนวนอน
-
มองเห็นได้
บูลีน ไม่บังคับ
"จริง" เพื่อแสดงหน้าต่างผู้สมัคร "เท็จ" หากแสดงหน้าต่างดังกล่าว
-
windowPosition
WindowPosition ไม่บังคับ
ตำแหน่งที่จะแสดงหน้าต่างตัวเลือก
-
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(success: boolean) => void
-
สำเร็จ
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
setComposition()
chrome.input.ime.setComposition(
parameters: object,
callback?: function,
)
ตั้งค่าการเรียบเรียงปัจจุบัน หากส่วนขยายนี้ไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่จะไม่สามารถดำเนินการได้
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะตั้งค่าข้อความการเรียบเรียง
-
เคอร์เซอร์
ตัวเลข
ตำแหน่งในข้อความของเคอร์เซอร์
-
กลุ่มเป้าหมายที่คล้ายกัน
object[] ไม่บังคับ
รายการกลุ่มและประเภทที่เกี่ยวข้อง
-
สิ้นสุด
ตัวเลข
ดัชนีของอักขระที่จะสิ้นสุดส่วนนี้หลังจาก
-
เริ่มต้น
ตัวเลข
ดัชนีของอักขระที่จะเริ่มต้นกลุ่มนี้ที่
-
รูปแบบ
ประเภทของการขีดเส้นใต้เพื่อแก้ไขส่วนนี้
-
-
selectionEnd
หมายเลข ไม่บังคับ
ตำแหน่งในข้อความที่สิ้นสุดการเลือก
-
selectionStart
หมายเลข ไม่บังคับ
ตำแหน่งในข้อความที่เริ่มการเลือก
-
ข้อความ
string
ข้อความที่จะตั้งค่า
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(success: boolean) => void
-
สำเร็จ
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
setCursorPosition()
chrome.input.ime.setCursorPosition(
parameters: object,
callback?: function,
)
กำหนดตำแหน่งของเคอร์เซอร์ในหน้าต่างตัวเลือก จะไม่มีผลหากส่วนขยายนี้ไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
candidateID
ตัวเลข
รหัสของผู้สมัครที่จะเลือก
-
contextID
ตัวเลข
รหัสของบริบทที่เป็นเจ้าของหน้าต่างผู้สมัคร
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(success: boolean) => void
-
สำเร็จ
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
setMenuItems()
chrome.input.ime.setMenuItems(
parameters: MenuParameters,
callback?: function,
)
เพิ่มรายการเมนูที่มีให้ลงในเมนูภาษาเมื่อ IME นี้ทำงานอยู่
พารามิเตอร์
-
พารามิเตอร์
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
updateMenuItems()
chrome.input.ime.updateMenuItems(
parameters: MenuParameters,
callback?: function,
)
อัปเดตสถานะของ MenuItems ที่ระบุ
พารามิเตอร์
-
พารามิเตอร์
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback เพื่อรองรับความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ โดยสัญญาจะได้รับการแก้ไขด้วยประเภทเดียวกันกับที่ส่งไปยัง Callback
กิจกรรม
onActivate
chrome.input.ime.onActivate.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อมีการเปิดใช้งาน IME โดยส่งสัญญาณว่า IME จะได้รับเหตุการณ์ onKeyPress
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, screen: ScreenType) => void
-
engineID
string
-
หน้าจอ
-
onAssistiveWindowButtonClicked
chrome.input.ime.onAssistiveWindowButtonClicked.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อมีการคลิกปุ่มในหน้าต่างความช่วยเหลือพิเศษ
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(details: object) => void
-
รายละเอียด
ออบเจ็กต์
-
buttonID
รหัสของปุ่มที่คลิก
-
windowType
ประเภทของหน้าต่างความช่วยเหลือพิเศษ
-
-
onBlur
chrome.input.ime.onBlur.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อโฟกัสออกจากกล่องข้อความ ระบบจะส่งข้อมูลไปยังส่วนขยายทั้งหมดที่ฟังเหตุการณ์นี้ และเปิดใช้โดยผู้ใช้
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(contextID: number) => void
-
contextID
ตัวเลข
-
onCandidateClicked
chrome.input.ime.onCandidateClicked.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้หากส่วนขยายนี้เป็นเจ้าของ IME ที่ใช้งานอยู่
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, candidateID: number, button: MouseButton) => void
-
engineID
string
-
candidateID
ตัวเลข
-
ปุ่ม
-
onDeactivated
chrome.input.ime.onDeactivated.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อมีการปิดใช้งาน IME ซึ่งเป็นสัญญาณว่า IME จะไม่ได้รับเหตุการณ์ onKeyPress อีกต่อไป
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string) => void
-
engineID
string
-
onFocus
chrome.input.ime.onFocus.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อโฟกัสป้อนกล่องข้อความ ระบบจะส่งข้อมูลไปยังส่วนขยายทั้งหมดที่ฟังเหตุการณ์นี้ และเปิดใช้โดยผู้ใช้
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(context: InputContext) => void
-
บริบท
-
onInputContextUpdate
chrome.input.ime.onInputContextUpdate.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อพร็อพเพอร์ตี้ของ InputContext ปัจจุบันมีการเปลี่ยนแปลง เช่น ประเภท ระบบจะส่งข้อมูลไปยังส่วนขยายทั้งหมดที่ฟังเหตุการณ์นี้ และเปิดใช้โดยผู้ใช้
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(context: InputContext) => void
-
บริบท
-
onKeyEvent
chrome.input.ime.onKeyEvent.addListener(
callback: function,
)
เริ่มทำงานเมื่อมีการส่งเหตุการณ์สำคัญจากระบบปฏิบัติการ ระบบจะส่งเหตุการณ์ไปยังส่วนขยายหากส่วนขยายนี้เป็นเจ้าของ IME ที่ใช้งานอยู่ ฟังก์ชัน Listener ควรแสดงผลเป็น "จริง" หากเหตุการณ์ได้รับการจัดการเป็น "เท็จ" หากไม่ใช่ หากมีการประเมินเหตุการณ์แบบไม่พร้อมกัน ฟังก์ชันนี้จะต้องแสดงผลเป็นไม่ระบุและ IME จะต้องเรียก keyEventHandled() ในภายหลังพร้อมด้วยผลลัพธ์
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, keyData: KeyboardEvent, requestId: string) => boolean | undefined
-
engineID
string
-
keyData
-
requestId
string
-
returns
บูลีน | ไม่ระบุ
-
onMenuItemActivated
chrome.input.ime.onMenuItemActivated.addListener(
callback: function,
)
เรียกใช้เมื่อผู้ใช้เลือกรายการในเมนู
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, name: string) => void
-
engineID
string
-
ชื่อ
string
-
onReset
chrome.input.ime.onReset.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อ Chrome สิ้นสุดเซสชันการป้อนข้อความต่อเนื่อง
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string) => void
-
engineID
string
-
onSurroundingTextChanged
chrome.input.ime.onSurroundingTextChanged.addListener(
callback: function,
)
มีการเรียกเมื่อสตริงที่แก้ไขได้รอบเครื่องหมายตกหรือเมื่อย้ายตำแหน่งเคอร์เซอร์ข้อความ ข้อความในแต่ละทิศทางจะมีความยาวได้ไม่เกิน 100 อักขระ
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, surroundingInfo: object) => void
-
engineID
string
-
surroundingInfo
ออบเจ็กต์
-
แท็ก Anchor
ตัวเลข
ตำแหน่งเริ่มต้นของการเลือก ค่านี้จะแสดงตำแหน่งของเคอร์เซอร์ข้อความหากไม่มีการเลือก
-
โฟกัส
ตัวเลข
ตำแหน่งสิ้นสุดของรายการที่เลือก ค่านี้จะแสดงตำแหน่งของเคอร์เซอร์ข้อความหากไม่มีการเลือก
-
หักลบ
ตัวเลข
Chrome 46 ขึ้นไปตำแหน่งออฟเซ็ต
text
เนื่องจากtext
มีเฉพาะข้อความบางส่วนรอบเคอร์เซอร์ ออฟเซ็ตจะแสดงตำแหน่งสัมบูรณ์ของอักขระตัวแรกของtext
-
ข้อความ
string
ข้อความรอบๆ เคอร์เซอร์ ข้อความนี้เป็นเพียงชุดย่อยของข้อความทั้งหมดในช่องป้อนข้อมูล
-
-