Через JavaScript добавляю в код сайта ссылку на поисковый плагин OpenSearch:

Выделить код

Код:

<link id="os" href="http://moi-sait.ru/os.xml" title="Поиск" type="application/opensearchdescription+xml" rel="search"/>

Скрипт работает корректно и тег в DOM присутствует. Но Файрфокс его не видит и не добавляет. Это баг или так задумано? И можно ли вообще решить такую проблему?

Пожалуй, стоит добавить, что отловил я эту проблему на Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.6) Gecko/20091201 MRA 5.5 (build 02842) Firefox/3.5.6 GTB6.

Если же этот тег поставить в статичный HTML, то всё работает прекрасно.

Вот здесь описано, как добавлять поисковые плагины средствами JavaScript. При запуске приведённых там сценариев будет появляться диалог с предложением установить поисковый плагин.

Вам, кажется, нужно не это. Вы хотите, чтобы в списке доступных поисковых плагинов появлялся пункт, предлагающий добавить поисковый плагин. В приведённом ниже примере у меня всё работает (правда, при чуть другом UA).

Выделить код

Код:

<html>
<head>
</head>
<body>
<script>
document.getElementsByTagName('head')[0].innerHTML +=
"<link id='os' href='http://moi-sait.ru/os.xml' title='Поиск' type='application/opensearchdescription+xml' rel='search'/>"
</script>
</body>
</html>

Код для добавления через диалог у меня есть и тоже, вроде работает, хотя пока на разные браузеры его не настраивал.

Попробую ваш пример. Я вообще-то через jQuery link добавлял, она штатная в движке сайта. Может в этом проблема?