10

私はグリースモンキー スクリプトの作成を開始しましたが、グリースモンキー スクリプトで localstorage を実行する際に問題に直面しています。GM で localstorage を把握できる唯一の方法は、newElement.innerHTMLDOM プロパティに Javascript の別のインスタンスを作成することですが、残りの変数にはアクセスできません。

何か案は ?これが、私が取り組んでいる Greasemonkey コード フラグメントです。

        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++;
4

2 に答える 2

12

値を保存する必要がある場合は、従来のGreasemonkeyの方法で、非常にうまく機能する関数を使用できGM_getValue()ますGM_setValue()

于 2011-06-28T18:15:01.437 に答える
8

うーん、unsafeWindow.localStorage が機能しないと思いますか? ChromeがlocalStorageを取得することは問題ではないことはわかっていますが、正直に言うと、Firefoxで試したことはありません。

于 2010-10-31T13:51:42.573 に答える