4

keyupコードの一部を a に変更しようとしbuttonましたが、ドラッグ可能な要素を取得してその位置を Cookie に保存するコードも試しましたが、役に立ちませんでした。空のタグを ready に変更すると、毎回前の行が繰り返されます。どんな助けでも大歓迎です。

元のコードの jsFiddle

ボタンでの私の試みのためのjsFiddle

HTML

<script src="http://code.jquery.com/jquery-1.8.3.js"></script>
<script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
<textarea></textarea>
<div id="opt"></div>

CSS

d {
    position: relative;
    left: 0;
    top: 0;
    width: 60px;
    height: 60px;
    background: #ccc;
    float: left;
    font-family: arial;
    font-size: 10px;
}

JavaScript

$(document).ready(function() {
    $("textarea").keyup(splitLine);

    function splitLine() {
        $("#opt").empty();
        var lines = $("textarea").val().split(/\n/g);
        for (var i = 0; i < lines.length; i++) {
            var ele = $("<d>");
            ele.html(lines[i]);
            $("#opt").append($(ele).draggable());
        }
    }
});
4

1 に答える 1

2

<d>すべてを削除して毎回最初からやり直す必要はないと思います。古いものを再利用するためにコードにいくつかの変更を加えて、その<d>位置が保持されるようにしました

$(document).ready(function () {
  $("textarea").keyup(splitLine);

  function splitLine() {
    //$("#opt").empty();
    var lines = $("textarea").val().split(/\n/g);
    for (var i = 0; i < lines.length; i++) {
      var ele;
      if ($("d:eq(" + i + ")").get(0)) {
        ele = $("d:eq(" + i + ")");
        ele.html(lines[i]);
      } else {
        ele = $("<d>");
        ele.html(lines[i]);
        $("#opt").append($(ele).draggable());
      }
    }
  }
});
于 2013-01-11T11:47:22.553 に答える