Отключение перетаскивания не работает в браузерах Safari / Chrome WebKit - PullRequest
1 голос
/ 09 ноября 2010

Я создал веб-приложение Rich Text Editor, используя document.designMode = "on" в iframe. Я хочу, чтобы выделение текста работало, но хочу, чтобы перетаскивание текста было отключено. Я попробовал это:

evt.dataTransfer.effectAllowed="none";
evt.dataTransfer.dropEffect = "none";

Это прекрасно работает в Firefox, но не работает в браузерах Safari / Chrome WebKit. Я пытался использовать это в каждом событии: dragover, dragstart, drag, dragenter и т. Д., Но безрезультатно. Функция evt.preventDefault () в mousedown или mouseup addEventListeners отключает выбор текста, который мне не нужен .please помочь ...

1 Ответ

0 голосов
/ 09 ноября 2010

Хорошо, здесь я вижу ту же проблему, что и у меня, я работал над этим в прошлом месяце, и мне просто повезло решить, используя метод проб и ошибок.Я использовал Asp.net MVC, а Safari и Chrome не включают скрипты, созданные в представлениях, у которых заполнители содержимого отображаются в заголовке главной страницы, если вы понимаете, о чем я.

В вашем сценарии вам может понадобиться проверить ваш javascript, если он был успешно запущен к моменту вызова функции.Как, например, вы добавляете библиотеку

, убедитесь, что она находится в заголовке, и при попытке вызвать функцию, например, скажите:

function Drag () {

// Оповещение, чтобы доказать, что этот метод Drag действительно назывался

alert («Был вызван метод Drag»);

}

Использование предупреждений поможет вам проверить,Функция была успешно выполнена, хотя оповещения раздражают, но если вы используете ее с умом, она наверняка поможет вам в отладке.И большую часть времени также полезно, если вы можете поместить все свои скрипты в заголовочную часть, хотя некоторых ситуаций избежать нельзя.

Это помогло мне в моих проблемах с JavaScript в Safari / Chrome.

Пожалуйста, проголосуйте, если это помогло вам.Спасибо!

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