Доступ к атрибуту 'draggable' с помощью javascript

Итак, вопрос: Как вы можете это сделать ? Я хочу изменить до "false" таким образом, элемент, который ранее был перетаскиваемым, потеряет это свойство.

Я дам вам div, чтобы вам было с чего начать:

     <div id="div1"  draggable="true" ondragstart="drag(event) "onDblClick="edit('div1')">
     </div>

5 ответов


document.getElementById('div1').setAttribute('draggable', false);

или

var elem = document.getElementById('div1');
elem.setAttribute('draggable', false);

Если вы хотите, чтобы атрибут полностью исчезла использования;

elem.removeAttribute('dragable');

есть много способов, Если вы используете jQuery:

    $('#div1').attr('dragabble'); //returns with the value of attribute
    $('#div1').attr('dragabble','false'); //sets the attribute to false

нативный JS:

    document.getElementById('div1').getAttribute('draggable'); //returns the value of attr
    document.getElementById('div1').setAttribute('draggable', 'false'); //set the value of attr

вы можете использовать компонент jQuery-ui draggable для достижения требуемой функциональности ur.. или, если у вас есть библиотека jquery в среде Ur Dev, вы можете использовать следующий код

$("#div1").attr ('draggable', false);

или с помощью JavaScript мы можем сделать это следующим образом

документ.метода getElementById('див1').setAttribute ('draggable','false');


после установки атрибута draggable to true, вы в основном часто хотите обрабатывать dragstart событие. Для этого в native JS:

elem.addEventListener('dragstart', ev => {
  // dragstart handlings here
  }, false)

var el = document.createElement('div');
el.draggable = false;

Кажется, применяет атрибут fine для меня.