Да, CSP блокирует букмарклеты в Mozilla Firefox. В этом есть ошибка .
Однако вы можете обойти это ограничение, внедрив код JS во внешнюю таблицу стилей CSS, как мой букмарклет Top News Feed :
Внешний CSS:
#topnewsfeed { font-family: '(function(){/*payload*/})()'; }
Bookmarklet JS:
(function() {
var a = document.createElement("link");
a.rel = "stylesheet";
a.href = "//niutech.github.io/topnewsfeed/topnewsfeed.css";
a.onload = function() {
var a = b.currentStyle ? b.currentStyle.fontFamily : document.defaultView.getComputedStyle(b, null).fontFamily;
eval(a.replace(/^["']|\\|["']$/g, ""));
};
document.body.appendChild(a);
var b = document.createElement("div");
b.id = "topnewsfeed";
document.body.appendChild(b);
})()
Букмарклет загружает файл CSS, содержащий код JS, добавляет элемент, стилизованный под этот CSS, читает атрибут стиля элемента и eval
код.