簡體   English   中英

本地存儲操作和可能的發送

[英]Local Storage manipulation and possible sending

我正在編寫一個利用本地存儲的網絡應用程序。 我現在將其設置為使用以下格式保存到本地存儲:

鍵:四位數字值:我的數據

我需要從 localStorage 中獲取所有單獨的數據,並將其輸出到具有以下格式的單個文件中:

XXXX <- 四位數字鍵
數據
-越線-

我該怎么做呢? 此外,是否有可能以某種方式獲取所有這些信息,並通過電子郵件發送。 或者以某種方式將其從本地存儲中取出並保存到剪貼板,以便用戶可以將其復制到他們的電子郵件中。

先謝謝了。

var output = "";
for(var key in localStorage) { 
    output += key+"\n";
    output += localStorage[key]+"\n";
    output += "\n";
}

// output contains combined string

至於電子郵件部分,您可以嘗試使用mailto:像這樣,

<a href='mailto:user@domain?subject=[subject here]&body=[email body here]'></a>

這可以組合成這樣的函數:

function sendLocalStorageByEmail(recipient) {
    // create localstorage string
    var output = "";
    for(var key in localStorage) { 
        output += key+"\n";
        output += localStorage[key]+"\n";
        output += "\n";
    }

    // create temporary anchor to emulate mailto click in new tab
    var anchor = document.createElement("a");
    anchor.href = "mailto:"+recipient+"?subject=Local+Storage+Data&body="+encodeURIComponent(output);
    anchor.style.display = "none"; 
    anchor.setAttribute("target","_blank");
    anchor.appendChild(document.createTextNode(""));
    document.body.appendChild(anchor);

    if (anchor.click) {
        return anchor.click();
    }

    // some browsers (chromium/linux) have trouble with anchor.click
    var clickEv = document.createEvent("HTMLEvents");
    clickEv.initEvent("click", true, true);
    anchor.dispatchEvent(clickEv)
}

用法:

<a href='javascript:sendLocalStorageByEmail(prompt("Please enter your e-mail address"))'>
   Send Email
</a>

可以在代碼中直接集成郵件地址,在 mailto 之前:

anchor.href = "mailto:*youradress@ttt.com*"+recipient+"? 
subject=Local+Storage+Data&body="+encodeURIComponent(output);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM