IE
Если вы пишете собственный код (т.е. плагин для браузера), вы можете использовать DWebBrowserEvents2 :: WindowStateChanged .
Вот пример кода для вашей IDispatch::Invoke()
реализации:
// DWebBrowserEvents2
case DISPID_WINDOWSTATECHANGED: {
if (pDispParams) {
DWORD dwMask = pDispParams->rgvarg[0].lVal;
DWORD dwFlags = pDispParams->rgvarg[1].lVal;
// We only care about WINDOWSTATE_USERVISIBLE.
if (dwMask & OLECMDIDF_WINDOWSTATE_USERVISIBLE)
{
bool visible = !!(dwFlags & OLECMDIDF_WINDOWSTATE_USERVISIBLE));
// ... your code here ...
}
}
break;
}
Нет явного события, отправляемого в Javascript страницы, но событие размытия может делать то, что вы хотите.
Firefox
В Firefox вы можете обнаружить изменения табуляции в вашем XUL, добавив прослушиватель событий для TabAttrModified
и проверив атрибут selected
. Информацию о работе с браузером с вкладками .
см. В документации
MDC.