Edit in JSFiddle

$(function() {
    $("#bmcanvas").resizable();
    $("#clear").click(function(){
        $(".sticky").remove();
    });
    $('#save').click(function(){
        var arr = [];
        $(".sticky").each(function(){
            var sticky  = $(this);
            var offset = sticky.offset();
            var obj = {};
            obj.width = sticky.width();
            obj.height = sticky.height();
            obj.zindex = sticky.css("z-index");
            obj.top = offset.top;
            obj.left = offset.left;
            obj.text = sticky.find(".instxt").html();
            arr.push(obj);
        });
        var saveObj = {};
        saveObj.title = $("#title").val();
        saveObj.width = $("#bmcanvas").width();
        saveObj.height = $("#bmcanvas").height();
        saveObj.sticky = arr;
        var jsonStr = JSON.stringify(saveObj);
        localStorage.setItem("data",jsonStr);
    });
    var szidx=0;
    var newSticky = function(){
        return $('<div class="sticky"><div class="instxt"> </div></div>')
          .appendTo('body')
          .draggable({
              start: function(event, ui) { $(this).css("z-index", szidx++); }
          })
          .click(function() {
              $(this).css("z-index", szidx++);
          })
          .dblclick(function() {
            var txt = $(this).find(".instxt").html().replace(/<br>/g,"\n");
            $(this).find(".instxt").html('<textarea></textarea>')
              .find('textarea')
              .val(txt)
              .width($(this).width())
              .height($(this).height())
              .focus()
              .select()
              .blur(function() {
                $(this).parent().html($(this).val().replace(/\n/g,"<br>"));
                $(this).remove()
              });
          }).resizable({
            minHeight: 30,
            minWidth: 60,
            start: function(event, ui) { $(this).css("z-index", szidx++); }
          })
          .css("position","absolute")
          .appendTo('#bmcanvasContent');
    }
    $("#load").click(function(){
        if(localStorage.getItem("data")){
            $(".sticky").remove();
            var saveObj = $.parseJSON(localStorage.getItem("data"));
            $("#title").val(saveObj.title);
            $("#bmcanvas").width(saveObj.width);
            $("#bmcanvas").height(saveObj.height);
            $.each(saveObj.sticky, function(idx,val){
              if(szidx < val.zindex) szidx = val.zindex;
              var stic = newSticky();
              stic.offset({ top: val.top, left: val.left})
              .height(val.height)
              .width(val.width)
              .css("z-index",val.zindex)
              .find(".instxt").html(val.text);
            });
        } else {
            alert("no save");
        }
    });
  $('#new').click(function() {
    newSticky();
  });
  $("#bmcanvas").dblclick(function(e) {
    var x = e.pageX;
    var y = e.pageY; 
    var stic = newSticky();
    stic.offset({ top: y, left: x});
    stic.dblclick();
    stic.find('textarea').focus()
  });
  $.contextMenu({
        selector: '.sticky', 
        callback: function(key, options) {
            if(key=="del"){
              $(this).remove();
            }
        },
        items: {
            "del": {name: "削除"}
        }
    });
});
<div>
キャンバスタイトル:<input id="title" type="text" value="" />
<input id="new" type="button" value="付箋追加" />
<input id="clear" type="button" value="付箋全削除" />
<input id="save" type="button" value="一時保存" />
<input id="load" type="button" value="読込" />
</div>
<div id="bmcanvasContent" onSelectStart="return false;">
<table id="bmcanvas">
    <col width="20%" /><col width="20%" />
    <col width="10%" /><col width="10%" />
    <col width="20%" /><col width="20%" />
    <tr>
        <td class="bmKeyPartners" rowspan="2" ><b>重要なパートナー</b></td>
        <td class="bmKeyActivities"><b>主要な活動</b></td>
        <td class="bmValuePropositons" rowspan="2" colspan="2"><b>価値提案</b></td> 
        <td class="bmCustomerRelationship"><b>顧客との関係</b></td>
        <td class="bmCustomerSegments" rowspan="2"><b>顧客セグメント</b></td>
    </tr>
    <tr>
        <td><b>重要なリソース</b></td>
        <td><b>チャネル</b></td>
    </tr>
    <tr>
        <td colspan="3" class="bmCostStructure"><b>コスト構造</b></td>
        <td colspan="3" class="bmRevenueStreams"><b>収益の流れ</b></td>
    </tr>
</table>
</div>
table#bmcanvas{
    width:700px;
    height:450px;
    border: solid 1px black;
    position:absolute;
}
table#bmcanvas td{
    border: solid 1px black;
    vertical-align:top;
}

#title {
    width:200px;
}

.sticky {
  width: 120px;
  height: 40px;
  background-color: #FFD900;
  cursor: pointer;
  overflow: hidden;
}
.instxt{
  padding:3px;
}
textarea {
  width: 100%;
  height: 100%;
}
#bmcanvasContent{
  position:relative;
}

.context-menu-list {
    margin:0; 
    padding:0;
    
    min-width: 100px;
    max-width: 200px;
    display: inline-block;
    position: absolute;
    list-style-type: none;
    
    border: 1px solid #DDD;
    background: #EEE;
    
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
       -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
        -ms-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
         -o-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
    
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 11px;
}

.context-menu-item {
    padding: 2px 2px 2px 24px;
    background-color: #EEE;
    position: relative;
    -webkit-user-select: none;
       -moz-user-select: -moz-none;
        -ms-user-select: none;
            user-select: none;
}

.context-menu-separator {
    padding-bottom:0;
    border-bottom: 1px solid #DDD;
}

.context-menu-item > label > input,
.context-menu-item > label > textarea {
    -webkit-user-select: text;
       -moz-user-select: text;
        -ms-user-select: text;
            user-select: text;
}

.context-menu-item.hover {
    cursor: pointer;
    background-color: #39F;
}

.context-menu-item.disabled {
    color: #666;
}

.context-menu-input.hover,
.context-menu-item.disabled.hover {
    cursor: default;
    background-color: #EEE;
}

.context-menu-submenu:after {
    content: ">";
    color: #666;
    position: absolute;
    top: 0;
    right: 3px;
    z-index: 1;
}

External resources loaded into this fiddle: