折叠HTML5 Adob​​e扩展面板时会触发什么事件?

时间:2014-02-05 13:01:12

标签: javascript jquery css html5 adobe

我正在开发一个HTML5 Adob​​e Extension,它需要将LocalStorage中的数据加载到某些内容中,但对于我的生活,我无法弄清楚面板是否正在折叠或关闭或者发生了什么。列表项是以dinamically方式生成的。

我还需要一个ideea来在退出时保存数据,以便在PS再次启动时可以保存和检索UL中的列表元素。到目前为止,我注意到主机是一个支持很多东西的chrome类型的浏览器,包括localstorage。但是,我没有看到一个用于保存ul项目的简单教程,但仅用于变量和字符串。

现在我无法保存或从localstorage中检索数据。

这是我目前的代码。

$(document).ready(function(){
var task = {
        "name" : "",
        "description" : "",
        "project" : ""
};

$('#saveData').css("visibility", "hidden");
$('#btnMarkAsDone').css("visibility","hidden");

var toBeDone = Array();
var wasDone = Array();

$( window ).load(function() {

    for(var i = 0;i < toBeDone.length;i++){
        $('#todo').append('<li class="todo-item">'+toBeDone[i]+'</li>');
    }
    for(var i = 0; i < wasDone.length; i++){
        $('#done').append('<li class="completed">'+wasDone[i]+'</li>');
    }

});
$( window ).width(function() {

});

$("#btnAddTask").click(function(){
    var oName = task.name;
    var oProject = task.project;
    var oDescription = task.description;

    var taskname = $("#txtTaskName").val();
    var taskproject = $("#txtTaskProj").val();
    var taskdescription = $("#txtTaskDesc").val();

    oName = taskname;
    oProject = taskproject;
    oDescription = taskdescription;

    var input = "<b>Task: </b>"+oName+" | "+"<b>PSD: </b>"+oProject+" | "+"<b>Desc: </b>"+oDescription;

    $("#todo").append('<li class="todo-item">'+input+'</li>');
});

$("#todo").on('click','li',function(){
    $(this).addClass('complete');
    $("#done").append(this);
});
$("#done").on('click','li',function(){
    $(this).remove();
});
$("#saveData").click(function(){

    if(localStorage['todo']){
        toBeDone = JSON.parse(localStorage['todo']);
    }if(localStorage['done']){
        wasDone = JSON.parse(localStorage['done']);
    }
});

$(function() { 
    $("button").button();
});
});

1 个答案:

答案 0 :(得分:0)

修正了localStorage部分:

$("#saveData").click(function(){

    var toDo = $('#todo').html();
    var finished = $('#done').html();
    localStorage.setItem('todo',toDo);
    localStorage.setItem('done',finished);

});

$(window).load(function() {
    $("#todo").html(localStorage.getItem('todo'));
    $("#done").html(localStorage.getItem('done'));
});

仍然需要找出窗口折叠时触发的事件类型。我感谢任何帮助!