добавление событий перетаскивания с использованием jQuery - PullRequest
0 голосов
/ 27 октября 2018

Я использую jQuery для добавления событий dragStart к кнопке.

Вот мой HTML:

$('.btn-photo').on('dragstart', function (event) {});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="SinglePhoto" class="btn-section btn-photo" draggable="true"></div>

Это работает в Chrome, но не в Safari.Кто-нибудь знает почему?

В Safari я могу перетащить элемент, но он не показывает, что он перетаскивается.В Chrome я могу перетащить элемент и вижу, что он перетаскивается.

Любая помощь будет принята с благодарностью!Спасибо!

1 Ответ

0 голосов
/ 27 октября 2018

Я не уверен, что это 100% правильный способ сделать это, но вы можете попробовать установить перетаскивание изображения, используя setDragImage для свойства dataTransfer события:

$('.btn-photo').on('dragstart', function (event) {
    event.preventDefault();
    let img = $(this)[0];
    event.dataTransfer.setDragImage(img, 0, 0);
});

Я также добавил туда event.preventDefault() на случай, если это как-то связано с этим (я не в Safari, поэтому не могу проверить).

Ссылка

...