Files
ionic-framework/core/src/utils/keyboard.ts
2018-04-19 13:26:49 +02:00

18 lines
573 B
TypeScript

export function isTextInputFocused(doc: Document): boolean {
const activeElement = doc.activeElement;
if (isTextInput(activeElement) && activeElement.parentElement) {
return activeElement.parentElement.querySelector(':focus') === activeElement;
}
return false;
}
const NON_TEXT_INPUT_REGEX = /^(radio|checkbox|range|file|submit|reset|color|image|button)$/i;
function isTextInput(el: any) {
return !!el &&
(el.tagName === 'TEXTAREA'
|| el.contentEditable === 'true'
|| (el.tagName === 'INPUT' && !(NON_TEXT_INPUT_REGEX.test(el.type))));
}