2

この問題を解決するために知っていることはすべて試しましたが、成功しませんでした。私のサイトは IE と FF で完全に動作しています。Chrome では、理由もなく、少し不具合があります。

私は2つのテーブルを持っています。ソース テーブルと宛先テーブル。テーブル行 (tr) をソースから宛先または宛先テーブル内にドラッグしています。行のドラッグを開始すると、自作のヘルパーによってクローンが作成され、自由にドラッグできます。

helper: function(event){
/* HERE IS THE PROBLEM */
   return $('<div class="dragged-row"><table></table></div>')
          .find('table').append($(event.target).closest('tr').clone().addClass("dragged-row")).end();
},

(このコードはインターネットから取得しました)

代わりにヘルパー「クローン」を使用すると、問題はなくなりましたが、クラスは適用されません (紫色の背景色)。

http://jsfiddle.net/jt3LX/で最小化された例を作成しました

1 行ドラッグできます。ドラッグを開始すると、両方の線が紫色になります (これは望ましいことです)。しかし、クロムでは、テーブルの最初の行が大きくなっています (なぜ????)。

次のいずれか (または両方) の可能性を教えてください。

  • ソースの背景を紫色にする別の方法を見つけ、
  • 「最初の行を大きくする」という不具合の問題を見つけます。

どうもありがとう、マイケル

4

3 に答える 3

0

あなたが述べた要件は次のとおりです。

  • ソースの背景を紫色にする別の方法を見つけ、
  • 「最初の行を大きくする」という不具合の問題を見つけます。

フィドルソリューション: http://jsfiddle.net/jt3LX/6/

あなたの最初のポイントのためi am guessingwant to make background color of purple when drop happens.

したがって、コードのこの部分で行う必要があります。

stop: function(event, ui){
            $(this).css("background-color", '#aaaaff'); // give purple color code here

            c.tr = null;
            c.helper = null;
        }

大きな問題は、テーブルに指定された幅がなく、ドラッグが実行されてクローンが画像に表示されたときに幅がいっぱいになることがわかります。

したがって、このために、テーブルに幅を与えました。

.main, .dropTable{position:relative; width:606px;}

引きずるTRの大きなことは今起こっていません。

この種の解決策を求めていることを願っています。これが役立つと思います。

于 2012-11-28T13:10:47.327 に答える
0

代わりに次の行を使用してください。return $(this).addClass("dragged-row").clone();

http://jsfiddle.net/jt3LX/2/

    $(".drag tr").not(".tableHead").draggable({
        helper: function(event){
            /* HERE IS THE PROBLEM */
            return $(this).addClass("dragged-row").clone();
        },
        start: function(event, ui){
            $(this).css("background-color", "#aaaaff");

            c.tr = this;
            c.helper = ui.helper;
        },
        stop: function(event, ui){
            $(this).css("background-color", '');

            c.tr = null;
            c.helper = null;
        }
    });

FF、IE9、Chrome でテスト済み

于 2012-11-28T11:41:07.457 に答える
0

Chrome 24 で問題なく動作します。どのバージョンの Chrome を使用していますか? Chrome の最新バージョンにアップグレードして、問題が発生しているかどうかをお知らせください。

于 2013-01-17T05:27:33.683 に答える