Comencé a escribir un script de greasemonkey, y tengo problemas para realizar el almacenamiento de locals en el script de Greasemonkey. La única forma en que pude descubrir el almacenamiento local en GM es creando otra instancia de Javascript en la propiedad DOM newElement.innerHTML
, pero allí el resto de mis variables son inaccesibles.LocalStorage en Greasemonkey
¿Alguna idea? Aquí está el fragmento de código de Greasemonkey en el que estoy trabajando.
var testHref = anchorTag[i].href;
var testHTML = anchorTag[i].innerHTML;
var patHref = /item\?id=[0-9]*/g;
var patCaptureId = /item\?id=([0-9]*)/g;
var testId = patCaptureId.exec(testHref);
var patHTML = /[0-9]* comment(|s)/g;
var patHTML2 = /discuss/g;
if(patHref.test(testHref) && !patHTML.test(testHTML) && !patHTML2.test(testHTML))
{
newElement = document.createElement('span');
newElement.style.color = "#FF0000";
newElement.innerHTML = "<a href=\"javascript:localStorage.setItem('one', 'rishabhVerma'); var test = localStorage.getItem('one'); console.log(test);\"> B</a>";
anchorTag[i].parentNode.insertBefore(newElement, anchorTag[i].nextSibling);
}
i++;
acabo de utilizar 'unsafeWindow.localStorage' en un script de Greasemonkey (en Firefox 3.6 en Mac) y que parece funcionar bien. –
Tenga en cuenta que el uso de unssafeWindow permitirá a las páginas web detectar y minipular potencialmente greasemonkey, si es capaz de atrapar los eventos que ocurren cuando se invoca el objeto inseguroWindow. Esta información se puede verificar [aquí] (https://www.safaribooksonline.com/library/view/greasemonkey-hacks/0596101651/ch01s13.html) – CoasterChris