Есть ли способ использовать JavaScript, чтобы определить, отображает ли данный браузер сфокусированный элемент
как всплывающее окно или только как встроенный блок ?
На некоторых платформах, таких как браузер Android и iOS Safari, использование всплывающего окна можно обнаружить, сравнив высоту, скажем,
<select multiple>
<option>a</option>
<option>a</option>
<option>a</option>
<option>a</option>
<option>a</option>
<select>
и
<select multiple>
<option>a</option>
<select>
. Высота одинакова , потому что
сокращаются до одного поля с кнопкой раскрывающегося списка. Но на других устройствах, таких как Playbook, этот тест дал бы ложноотрицательный результат, поскольку браузер Playbook отображает расширенные списки выбора , а показывает всплывающие окна при нажатии на них.
Кто-нибудь может придумать надежный способ определить, отображается ли собственное всплывающее окно выбора?