jQuery Draggable - Выход из сдерживания - Chrome Bug - PullRequest
0 голосов
/ 14 февраля 2011

Я понял, что у меня есть ошибка с jQuery Draggable в Chrome, которой нет в Firefox и Internet Explorer. У меня есть div # drag-container / 450x80 / ​​и 3 ​​перетаскиваемых объекта внутри. / 150x0 / и когда я переместу их в самую низкую точку, дайте им и снова перетащите НИЖЕ, они получат положение 0,80 + 14 = 0,94 px. Я позволил им и перетащил, и они снова стали на 14 пикселей ниже.

Есть ли исправления?

Рабочая демоверсия: http://jsfiddle.net/ucmqq/ Вот код:

<style>
    .draggable { width: 150px; height: 0px; cursor:move; }
    <?PHP if($userinfo->use_colors != '0'): ?>
    #drag-container { width: 450px; height:80px; background-color:<?=$userinfo->background?>; }
    <?PHP else: ?>
    #drag-container { width: 450px; height:80px; background:url(/backgrounds/<?=$userinfo->image?>); }
    <?PHP endif; ?>
    </style>

    <script language="javascript">

    $(function() {
        $( "#draggable" ).draggable({ cursor: "move",containment: 'parent', scroll: false,
        stop: function() {
        document.settings.np_x.value = $(this).css('left');
        document.settings.np_y.value = $(this).css('top');
         }
                                    });
        $( "#draggable2" ).draggable({ cursor: "move",containment: 'parent', scroll: false ,
        stop: function() {
        document.settings.artist_x.value = $(this).css('left');
        document.settings.artist_y.value = $(this).css('top');
         }
                                     });
        $( "#draggable3" ).draggable({ cursor: "move",containment: 'parent', scroll: false ,
        stop: function() {
        document.settings.other_x.value = $(this).css('left');
        document.settings.other_y.value = $(this).css('top');
         }
                                     });
    });

    </script>


<div id="drag-container">
    <div id="draggable" class="draggable" style="position:relative;top:5px;left:80px;">
        .::[ NowPlaying SIGnature ]::.
    </div>
    <div id="draggable2" class="draggable" style="position:relative;top:25px;left:80px;">
        Artist - title
    </div>
    <div id="draggable3" class="draggable" style="position:relative;top:45px;left:80px;">
        Album: (Year)
        <br>
        Genre:
    </div>

</div>

Ответы [ 2 ]

1 голос
/ 16 февраля 2011

Проблема была в том, что высота перетаскиваемого объекта равна 0. С высотой 1 снова глючит, но без высоты вообще все нормально.

0 голосов
/ 09 октября 2014

У меня была та же ошибка, но в моем случае не было высоты перетаскиваемого элемента. В моем случае я использовал bootstrap и пытался перетащить элементы в разные col-md-3 div. Проблема была в css float свойство col-md-3. Поэтому мне пришлось удалить его, и использовать display: inline-block; vertical-align: top;

Может быть, это кому-нибудь поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...