window.focus (), self.focus () не работает в Firefox - PullRequest
8 голосов
/ 28 марта 2010

Привет, все, что я разрабатываю приложение для чата ... У меня несколько окон чата ... Я хочу знать, в каком ветре есть новое сообщение ... У меня есть следующий код ..

function getCount()
{
    $.ajax({
       type: "POST",
       url: baseUrl + '/Chat/count',
       data: "chat_id=" + document.ajax.chat_id.value,
       success: function(msg){
                if(msg == 'new1') {
                    self.focus();
                                            //window.focus();

                }
            }
    });
}

Если оператор посещает оба чата ....

например, URL-адрес как http://localhost/nisanth/admin/Chat/index/chatId/15 http://localhost/nisanth/admin/Chat/index/chatId/16

http://localhost/nisanth/user/Chat/index/chatId/15 http://localhost/nisanth/user/Chat/index/chatId/16

если user 16 ввести сообщение, мне нужен фокус

http://localhost/nisanth/admin/Chat/index/chatId/16

Этот код отлично работает с IE, но не в Firefox ... Пожалуйста, дайте мне решение ... приведенный выше код в том же HTML

Ответы [ 2 ]

11 голосов
/ 28 марта 2010

Firefox будет выполнять запросы на повышение окна, только если установлена ​​опция безопасности, и она не установлена ​​по умолчанию.Насколько я могу судить, Chrome вообще не будет обращать внимания на запросы focus ().Safari выполняет запрос focus ().

Конкретные настройки Firefox находятся в диалоговом окне «Инструменты» -> «Параметры» («Редактировать -> Настройки» в Linux, может быть, MacOS).Там есть вкладка «Содержимое», и в этом есть флажок для включения Javascript.Наряду с это кнопка «Дополнительно», которая вызывает еще одно диалоговое окно , в котором можно найти флажок, разрешающий (или запрещающий) подъем и опускание окон по коду страницы.*

edit: Вот тестовая страница: http://gutfullofbeer.net/focus1.html, и вы должны увидеть, что Firefox будет поднимать окно, когда страница вызывает window.focus(),Вы должны либо настроить браузер так, чтобы новые окна (созданные с помощью window.open()) открывались в новом отдельном окне вместо вкладки, либо вы можете оторвать вкладку дополнительной страницы при ее открытии.

0 голосов
/ 08 апреля 2019

У меня была такая же проблема, хотя с моим JS-скриптом была проблема, после долгого поиска я нашел решение:

1) В новой вкладке введите about: config в адресной строке и нажмите кнопку «Ввод». Нажмите кнопку «Я принимаю на себя риск!» для подтверждения предупреждения

2) В поле поиска введите dom.disable , чтобы получить dom.disable_window_flip

3) Если свойство dom.disable_window_flip имеет значение true, дважды щелкните его, чтобы переключить значение с true на false

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...