Chrome сразу подставляет вместо кириллицы pynicode и дальше js его уже кодирует.
А firefox как я понял такого не делает, и отдает encodeURI кириллицу, которая само-собой все ломает.
Как можно это обойти?
var args = 'domain=' + top.document.domain;
var page = 'https://site.ru/' + encodeURI(args);
console.log(page);