4

Когда я пытаюсь сделать это

:autocmd LocationChange .* echo document.title

первая отображаемая страница не вызывает эха. Если я перейду к следующей вкладке, будет отображен заголовок последней вкладки.

Кто-нибудь знает, как я могу получить для каждой посадки на страницу заголовок мгновенно повторяется вместо того, чтобы "покинуть" вкладку?

И это работает только каждые два раза. Если я пройду через мои вкладки 1,2,3,4,5,6,7,8 (следующая вкладка), результат будет (в настоящее время равен 1)

  • _blank
  • Название 1
  • _
  • Название 3
  • _
  • Название 5
  • _
  • Название 7
  • _

(сейчас на вкладке 8)

Но я хочу

  • Название 1
  • Название 2
  • ...

Есть идеи?

1 ответ1

2

У меня не было части "Отсутствует каждая вторая страница" в моем Firefox (вы используете более старую версию?). Но часть "оставляем заголовок страницы" такая же, как вы. Понятно, почему это происходит: это событие LocationChange запускается, как только вы меняете местоположение, поэтому оно просто получает заголовок текущего документа (который становится для нас документом!)
Одним из выходов будет добавление некоторой задержки перед получением заголовка. Вот что я пытаюсь: Поместите файл javascript в каталог vimperator/plugin, куда я добавляю этот метод:

   commands.addUserCommand ("showtitle", "add some delay before showing it",
    function (args) {
        setTimeout(function() {
            liberator.echo(document.title);
        }, 1);
    }
);

Этот плагин добавит новую команду для vimperator (после перезапуска FF). Если вы вызовете эту команду, она будет показывать заголовок текущего документа через 1 миллисекунду. Теперь мы можем использовать эту новую команду для нашей автоматической команды: autocmd LocationChange .* showtitle . После этого вы увидите, что заголовок текущего документа (текущий документ для нас) отражается в большинстве случаев. Вы можете увеличить задержку, чтобы стать более точным.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .